Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#5

Re: grr.... Weltzeit Probleme...

  Alt 16. Jun 2004, 16:35
Zitat von S2B:
Zitat von shmia:
Also SysUtils.Now liefert die die aktuelle lokale Systemzeit.
Wenn dir bekannt ist, dass wir in Deutschland gerade bei UTC+2 sind, dann musst du 2 Stunden
abziehen um zur UTC zu kommen:
Aber dann geht das ja nicht, wenn das Programm auf einem Rechner läuft, auf dem Englische Systemzeit eingestellt ist, oder?
Klar die 2 Stunden waren ja nur als Beispiel gedacht.
Noch geschickter geht es vielleicht so:
Delphi-Quellcode:
// liefert die aktuelle Systemzeit in Coordinated Universal Time (UTC)
function NowUTC: TDateTime;
var
  SystemTime: TSystemTime;
begin
  GetSystemTime(SystemTime);
  with SystemTime do
    Result := EncodeDate(wYear, wMonth, wDay) +
      EncodeTime(wHour, wMinute, wSecond, wMilliseconds);
end;
Dann ist UTC+10 ganz leicht zu berechnen mit:
Delphi-Quellcode:
function NowUTC_TZ(timezone:integer):TDateTime;
begin
   Assert((timezone >= 12) and (timezone <= 12), 'Invalid Timezone');
   Result := NowUTC+ timezone*(1.0/24.0);
end;
Andreas
  Mit Zitat antworten Zitat