Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - getcurrenttimemillis (= Java) -> Delphi
Seven of Nine - Mi 01.08.12 06:38
Titel: getcurrenttimemillis (= Java) -> Delphi
Guten Morgen
mit welchem Code ermittelt man (sicher) die identische Zeit in [ms] welche die Java-Function "getcurrenttimemillis" ermittelt.
Diese ermittelt ja meines Wissens die Zeit Seit 1.1.1970, UTC, in Millisekunden
ich dachte mir mit
Delphi-Quelltext
1:
| TimeDifferenceMS := MilliSecondsBetween(now , EncodeDateTime(1970,1,1,0,0,0,0) ); |
bin mir leider aber nicht sicher ob das stimmt.
lG Martin
Seven of Nine - Mi 01.08.12 08:43
Hallo
Ich bin mir halt von der Logik her noch nichts sicher ob das wirklich passt.
denn sowohl das aktuelle "Now" sowie auch das "1970,1,1,0,0,0,0" müssen den entsprechen richtigen Offset zur UTC haben.
Dies berücksichtigt neben dem gleichbleibendem Delta wegen dem GMT-Versatz (bei uns +1h)
ja auch das Delta wegen Sommer/Winterzeit!
beim 1970 Datum ist das ja "fix", aber bei "Now" kann das sowohl Winter als auch Somemrzeit sein.
Verständich formuliert?
lG M
Andreas L. - Mi 01.08.12 11:35
DateTimeToUnix gibt die Sekunden seit Beginn der Unix-Epoche 1.1.1970 zurück. Ob die Funktion den genannten GMT-Offset berücksichtigt weiß ich nicht. Denke aber das der zurückgegebene Wert UTC entspricht.
Delphi-Quelltext
1: 2: 3: 4: 5:
| var Epoch: int64; begin Epoch := DateTimeToUnix(Now); end; |
Seven of Nine - Fr 03.08.12 05:46
Getestet:
Delphi-Quelltext
1:
| TimeDifferenceMS := MilliSecondsBetween(now , EncodeDateTime(1970,1,1,0,0,0,0) ); |
ist ein ausreichend genaues Pendant zu getcurrenttimemillis (Java)
Danke für eueren Support!
lG Martin
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!