![]() |
Zeit in Millisekunden zwischen zwei Zeitstempeln
ich habe eine Reihe von Messdaten, wo ich zu jedem Messwert auch den Zeitstempel mit now erfasst habe. Jetzt würde ich gerne wissen wie ich die Zeitspanne in Millsekunden zwischen zwei solcher Zeitpunkte herausfinde.
Ich steige nicht so ganz hinter das Floating Point Zeitformat. Vielen Dank schonmal im Vorraus :) |
Re: Zeit in Millisekunden zwischen zwei Zeitstempeln
Delphi-Quellcode:
Die Auflösung ist aber sicher nicht so prickelnd. Besser ist vermutlich GetTickCount. Noch besser soll angeblich der HighPerformanceCounter sein, habe ich in meinen Versuchen nie bestätigen können.
frac(now)*MillisecsPerDay
|
Re: Zeit in Millisekunden zwischen zwei Zeitstempeln
Falls es keine Funktion MilliSecondsBetween() oder so gibt (guck mal in Dateutils) würde ich einfach die Differenz nehmen (die dann in ganzen Tagen ist) und diese mit 1000*60*60*24 = 86400000 [Millisekunden/Tag] multiplizieren. Vorausgesetzt, die Auflösung reicht bs in den Millisekundenbereich, sollte dir das die Anzahl an Millisekunden leifern ;)
|
Re: Zeit in Millisekunden zwischen zwei Zeitstempeln
erstes Problem, Now hat nicht die genauigkeit für Millisekunden (+/- 16 ms)
ansonsten ist es nur etwas Mathe der Ganzzahlanzeil von TDateTime (der Type von Now) entspricht den Tagen, also ist der Nachkommaanteil für die Uhrzeit 1/24 = Stunden 1/24/60 = Minuten 1/24/60/60 = Sekunden 1/24/60/60/1000 = Millisekunden Abs(a - b) * 24*60*60*1000 = Differenz in ms [edit] wieso sind grad alle so schnell? |
Re: Zeit in Millisekunden zwischen zwei Zeitstempeln
In DateUtils gibts tatsache eine Funktion MilliSecondsBetween, und diese Funktioniert prima. Vielen Dank :)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz