Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.508 Beiträge
 
Delphi 7 Professional
 
#19

AW: DateTimeToUnix 1 stunde zurück

  Alt 18. Dez 2020, 10:11
In Unix ist die Zeit doch Sekunden seit 1.1.1970.

1 Stunde sind 60 Minuten * 60 Sekunden -> 3600 Sekunden.

Unixzeit in Greenwich (UTC) + 3600 müsste dann doch die Uhrzeit bei uns (Berlin) ergeben?
Unsere Uhrzeit -1 Stunde ergibt UTC.

Oder irre ich da?

Also ungefähr sowas:
Delphi-Quellcode:
function DateTimeToUnixWithOffSet(const AValue: TDateTime; const AOffSet : Int64): Int64;
begin
  Result := Round((AValue - UnixDateDelta) * SecsPerDay) + AOffSet;
end;

...

  TimeStart := DateTimeToUnixWithOffSet(Now, -3600); // Eine Stunde zurück -> UTC
  TimeEnd := DateTimeToUnixWithOffSet(Now, 3600); // Eine Stunde vor -> ergibt eine Zeitspanne von 2 Stunden
Oder eventuell: TimeStart := DateTimeToUnix(DateTime2UnivDateTime(DecHour(Now, 1))); Nur hab' ich keine Ahnung, ob es DecHour gibt, Google findet es jedenfalls nicht.

Kann IncHour auch mit negativen Zahlen umgehen? Dann TimeStart := DateTimeToUnix(DateTime2UnivDateTime(IncHour(Now, -1)));
  Mit Zitat antworten Zitat