Ich suche, wie man Zeit einschließlich Mikrosekunden formatiert. Ich benutze Klasse DateTime, es erlaubt (mit Eigenschaften), Daten bis Millisekunden zu erhalten, was nicht genug ist. Ich habe versucht, Ticks zu verwenden, aber ich wusste nicht, wie man es in Mikrosekunden übersetzt.C# Zeit in Mikrosekunden
Antwort
Sie "ffffff"
in einem Format-String verwenden können Mikrosekunden darstellen:
Console.WriteLine(DateTime.Now.ToString("HH:mm:ss.ffffff"));
Um eine Anzahl von Ticks zu Mikrosekunden zu konvertieren, benutzen Sie einfach:
long microseconds = ticks/(TimeSpan.TicksPerMillisecond/1000);
Wenn diese Ihnen nicht helfen, Bitte geben Sie weitere Informationen über genau das, was Sie versuchen zu tun.
EDIT: Ich multipliziert ursprünglich ticks
von 1000 Genauigkeit zu verlieren, wenn TimeSpan.TicksPerMillisecond
von 1000. Allerdings teilen, Es stellt sich heraus, dass die TicksPerMillisecond
ist tatsächlich ein konstanter Wert von 10.000 - so dass Sie von 1000 ohne Probleme teilen können, und in Tatsache könnten wir einfach verwenden:
const long TicksPerMicrosecond = 10;
...
long microseconds = ticks/TicksPerMicrosecond;
Ich habe beide opyions benutzt das Problem ist, dass ich die Mikrosekunden immer Null bekomme. Es scheint, als ob es die Auflösung davon nicht bekommen kann. –
Dann ist das kein Formatierungsproblem, es ist ein Auflösungsproblem. Woher bekommst du die Daten von Anfang an? Wenn Sie versuchen herauszufinden, wie lange etwas dauert, sollten Sie die Klasse "Stoppuhr" verwenden. –
Nein. Ich brauche es nur für den Logger. Für jedes Ereignis im System gebe ich zu Beginn den Zeitpunkt ein, zu dem es passiert ist. Irgendwelche Vorschläge? –
"ffffff" ist, was Sie brauchen.
return DateTime.Now.ToString("HH:mm:ss.ffffff");
Ich benutzte es das Problem ist, dass es immer Null in den Mikrosekunden druckt, als ob es nicht berechnet. –
Dies ist kein Problem mit der Formatierung, das ist ein Problem mit DateTime.Now Genauigkeit. Versuchen Sie es mit System.Diagnostics.Stopwatch. –
Ich versuchte es ein anderes Windows (meins ist Vista) und es Auflösung der Mikrosekunden –
Ich war nicht in der Lage Johns zu micorosecond Umwandlung tick Arbeit zu bekommen. Hier ist, wie ich war in der Lage Mikrosekunde und Nanosekunden-Auflösung zu messen durch Zecken verwendet und die Stoppuhr:
Stopwatch sw = new Stopwatch();
sw.Start();
// Do something you want to time
sw.Stop();
long microseconds = sw.ElapsedTicks/(Stopwatch.Frequency/(1000L*1000L));
long nanoseconds = sw.ElapsedTicks/(Stopwatch.Frequency/(1000L*1000L*1000L));
Console.WriteLine("Operation completed in: " + microseconds + " (us)");
Console.WriteLine("Operation completed in: " + nanoseconds + " (ns)");
sw.Elapsed.TotalMilliseconds ist nett. Dann dividiere durch 1000 um Mikrosekunden zu erhalten. – rocketsarefast
Das ist nicht ganz richtig, weil (Stopwatch.Frequency/(1000L * 1000L)) ein langer Wert ist, hinterlässt alles nach einer Dezimalzahl, zum Beispiel wenn das Ergebnis der Gleichung in der Zeile (von meinem Kommentar) 2,8576 ist, was technisch ist 3 aber sw.ElapsedTicks werden durch 2 nicht 2.8 oder 3 geteilt, was völlig falsch ist. – user2913184
- 1. php Mikrosekunden
- 2. Mikrosekunden-Profiler für C-Code
- 3. konvertiert Mikrosekunden in eine vom Menschen lesbare Zeit
- 4. Mikrosekunden in datetime verloren
- 5. c/C++ - konvertieren zwischen Unix-Zeit und der "Gregorianischen Zeit"
- 6. Python timedelta entfernen Mikrosekunden
- 7. Handhabung Milli vs Mikrosekunden in Python
- 8. DateTime mit Mikrosekunden
- 9. PHP microtime - Mikrosekunden Format
- 10. Qt QDateTime Mikrosekunden Genauigkeit
- 11. C erhalten Systemzeit auf Mikrosekunden Genauigkeit auf Windows?
- 12. Mikrosekunden-Timer mit Carbon-Framework
- 13. Actionscript 3 hochpräzise Zeitmethode (Mikrosekunden)?
- 14. Parsing Datetime Strings mit Mikrosekunden
- 15. Lange Zeit von einer Methode zurückzukehren C++
- 16. datetime Mikrosekunden nicht exportiert in django dumpdata
- 17. Plotten Pandas Datenrahmen mit Mikrosekunden Auflösung
- 18. Messen von Zeit im Linux Kernel Space mit Sub-Mikrosekunden Präzision
- 19. Erste Mikrosekunden Zeit von std :: Chrono :: steady_clock :: now(), da Prozessor Power-up
- 20. simulieren Zeit Reflexion in C++
- 21. C# GMT Zeit entspricht UTC-Zeit?
- 22. MySQL 5.6 DATETIME akzeptiert keine Millisekunden/Mikrosekunden
- 23. Zeit, C und PHP
- 24. Java-Datumsanalyse mit Mikrosekunden- oder Nanosekundengenauigkeit
- 25. Wie GMT Zeit basierend auf lokaler Zeit in C berechnet
- 26. Kann Mikrosekunden nicht korrekt mit strptime analysieren()
- 27. Nanosleep Schlaf 60 Mikrosekunden zu lange
- 28. Konvertieren Intervall in Mikrosekunden als Zahl in PostgreSQL?
- 29. Python: string Konvertieren mit Mikrosekunden zeitzustempeln
- 30. Convert Zeit Zeichenfolge in Datetime in C#
Seien Sie vorsichtig mit DateTime.Now, ist es nicht genau auf die Mikrosekunde. Versuchen Sie System.Diagnostics.Stopwatch, um die Zeit zu ergreifen. Stellen Sie außerdem sicher, dass Sie eine hochauflösende Systemuhr haben. –
Ja, Sie haben Recht. Ich brauchte meine Zeit, um diesen Kommentar zu verstehen. Obwohl es die Zeit in Mikrosummen darstellt, ist die Zeit nicht in Mikrosekunden. –