Einzelnen Beitrag anzeigen

Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#22

AW: Konvertierung UnixTimeStamp nacht TDateTime und zurück

  Alt 6. Jun 2018, 15:36
Für D2009 habe ich einen mini-Hotfix
Delphi-Quellcode:
function _DateTimeToUnix(const AValue: TDateTime): Int64;
begin
  if AValue >= 0 then
    Result := Round((AValue - _UnixDateDelta) * _SecsPerDay)
  else
    Result := 172798 + Round((AValue - _UnixDateDelta) * _SecsPerDay);
end;

function _UnixToDateTime(const AValue: Int64): TDateTime;
begin
  if AValue >= 0 then
    Result := AValue / _SecsPerDay + _UnixDateDelta
  else
    Result := (AValue - 172798) / _SecsPerDay + _UnixDateDelta;
end;
Es ist allerdings anzumerken, _UnixToDateTime() hat noch einen Fehler!!
Die Sekunden-Angabe schwankt was zum Beispiel bei 23:59:59 auch den nächsten Tag zur Folge haben könnte !!
Oder anders herum kann auch aus ein 00:00:00 der vorige Tag werden !! Je nachdem wohin die MSecs schwanken +0.5 oder -0.5.
Ich hoffe es ist Verständlich was ich meine.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat