![]() |
int64 zu tDateTime?
Wie könnte ich eine int64 zu einem tDateTime typ casten? Habe leider niergends etwas passendes gefunden....
|
Re: int64 zu tDateTime?
Ungetestet: erst zu FileTime casten, dann zu SystemTime konvertieren und dann zu DateTime.
|
Re: int64 zu tDateTime?
Was ist denn das für ein Zeitformat?
Mein spatz im Kopf sagt mir etwas von "UnixToDateTime" |
Re: int64 zu tDateTime?
wie kann ich denn ein int64 zu tFileTime Casten?
|
Re: int64 zu tDateTime?
Beides sind doch Records aus 2 DWORD, wenn ich richtig lesen kann.
|
Re: int64 zu tDateTime?
... aber TDateTime ist doch ein Double, oder?
|
Re: int64 zu tDateTime?
Hallo
Beide haben 8 Bytes (TDateTime ist ein Double) Folgende Lösungsvariante mithilfe von "ABSOLUTE". Aber Achtung kein sauberer Programmierstil ... Desweiteren solltest du mal überprüfen, ob du wirklich so etwas benötigst ...
Delphi-Quellcode:
procedure TForm1.Test1;
var i1:int64; d2:tDateTime; i3:int64 absolute d2; begin // Bei folgendem schimpft der compiler i1 := Int64(d2); d2 := TDateTime(i1); // das folgende geht ... i3 := 1; d2 := 0.0; if (i3=0) then begin // beachte das "absolute" // damit ist i3 automatisch auch Null, da die 8 Bytes von d2 auch mit dem Namen i3 ansprechbar sind ... // Sauberer Programmierstil ist das aber nicht ... end; end; |
Re: int64 zu tDateTime?
danke, es funktioniert jetzt!! :-D
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:09 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