![]() |
Time <-> Millisekunden
Hallo,
in der Unit System.DateUtils gibt es die Funktion "TimeToMilliSeconds". Diese rechnet mir aus einer angegeben Zeit, die Millisekunden aus. Gibt es sowas auch andersrum? Gefunden habe ich nichts dazu. Also aus Millisekunden eine Zeit machen? Ich weiß, wie ich das "zu Fuß" machen muss, dachte aber, da gibt es etwas fertiges? |
AW: Time <-> Millisekunden
Bei TDateTime gilt:
1 = 1 Tag Ein Tag hat 24 Stunden zu 60 Minuten = 24 * 60 = 1440 Minuten zu 60 Sekunden = 1440 * 60 = 86400 Sekunden zu 1000 Millisekunden = 86400 * 1000 = 86400000 Millisekunden 1 Millisekunde = 1 / 86400000 = 1,1574074074074074074074074074074e-8 Tage
Delphi-Quellcode:
function MilliSecondsToTime(AMilliSeconds : Cardinal) : TDateTime;
begin Result := AMilliSeconds / 86400000; end; |
AW: Time <-> Millisekunden
Hi Delphi.Narium,
danke. Das "zu Fuß" bzw. selber eine Funktion machen, hatte ich ja erwähnt, dass ich dies habe. Ich war nur selber überrascht, was es alles schönes in der DateUtils gibt und hatte keine von Delphi mitgelieferte Funktion gefunden. Wollte daher nur wissen, ob es diese irgendwo gibt (vielleicht unter einem anderen Namen etc). Ich nehme lieber fertige, mitgelieferte Funktionen anstatt neue ;-) |
AW: Time <-> Millisekunden
Am nächsten würde wohl
Delphi-Quellcode:
kommen, wenn man nix eigenes schreiben möchte.
IncMilliSecond(0, ms)
|
AW: Time <-> Millisekunden
Eine Funktion dafür gibt es meines Wissens nicht, aber man kann das auch direkt so schreiben:
Delphi-Quellcode:
var
myTime: TTime; myMilliSeconds: Int64; begin myTime := TimeOf(Now); myMilliSeconds := TimeToMilliseconds(myTime); myTime := myMilliSeconds*OneMillisecond; end; |
AW: Time <-> Millisekunden
Außerdem gibt es schöne Konstanten zum Umrechnen, anstatt so komischer undokumentierter nummerischer Werte.
Delphi-Quellcode:
// System.SysUtils
HoursPerDay = 24; MinsPerHour = 60; SecsPerMin = 60; MSecsPerSec = 1000; MinsPerDay = HoursPerDay * MinsPerHour; SecsPerDay = MinsPerDay * SecsPerMin; SecsPerHour = SecsPerMin * MinsPerHour; MSecsPerDay = SecsPerDay * MSecsPerSec; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:35 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-2025 by Thomas Breitkreuz