Einzelnen Beitrag anzeigen

Schokohase
(Gast)

n/a Beiträge
 
#11

AW: Wie Umstellung Sommver/Winterzeit testen?

  Alt 4. Mär 2019, 15:17
Kleiner Test
Delphi-Quellcode:
program Project2;

{$APPTYPE CONSOLE}
{$R *.res}

uses
  System.DateUtils,
  System.SysUtils;

procedure Test;
var
  utc, lt: TDateTime;
begin
  Writeln('Winter- auf Sommerzeit');
  Writeln('----------------------');
  utc := EncodeDateTime(2019, 03, 30, 23, 00, 00, 00);
  while utc <= EncodeDateTime(2019, 3, 31, 02, 00, 00, 00) do
  begin
    lt := TTimeZone.Local.ToLocalTime(utc);
    Writeln('UTC ', FormatDateTime('dd.mm.yyyy hh:nn', utc), ' Local ', FormatDateTime('dd.mm.yyyy hh:nn', lt));
    utc := IncMinute(utc, 15);
  end;
  Writeln;
  Writeln('Sommer- auf Winterzeit');
  Writeln('----------------------');
  utc := EncodeDateTime(2019, 10, 26, 23, 00, 00, 00);
  while utc <= EncodeDateTime(2019, 10, 27, 02, 00, 00, 00) do
  begin
    lt := TTimeZone.Local.ToLocalTime(utc);
    Writeln('UTC ', FormatDateTime('dd.mm.yyyy hh:nn', utc), ' Local ', FormatDateTime('dd.mm.yyyy hh:nn', lt));
    utc := IncMinute(utc, 15);
  end;
end;

begin
  try
    Test;

  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
  Readln;
end.
Ergebnis
Code:
    Winter- auf Sommerzeit
    ----------------------
    UTC 30.03.2019 23:00 Local 31.03.2019 00:00
    UTC 30.03.2019 23:15 Local 31.03.2019 00:15
    UTC 30.03.2019 23:30 Local 31.03.2019 00:30
    UTC 30.03.2019 23:45 Local 31.03.2019 00:45
    UTC 31.03.2019 00:00 Local 31.03.2019 01:00
    UTC 31.03.2019 00:15 Local 31.03.2019 01:15
    UTC 31.03.2019 00:30 Local 31.03.2019 01:30
    UTC 31.03.2019 00:45 Local 31.03.2019 01:45
    UTC 31.03.2019 01:00 Local 31.03.2019 03:00
    UTC 31.03.2019 01:15 Local 31.03.2019 03:15
    UTC 31.03.2019 01:30 Local 31.03.2019 03:30
    UTC 31.03.2019 01:45 Local 31.03.2019 03:45
    UTC 31.03.2019 02:00 Local 31.03.2019 04:00

    Sommer- auf Winterzeit
    ----------------------
    UTC 26.10.2019 23:00 Local 27.10.2019 01:00
    UTC 26.10.2019 23:15 Local 27.10.2019 01:15
    UTC 26.10.2019 23:30 Local 27.10.2019 01:30
    UTC 26.10.2019 23:45 Local 27.10.2019 01:45
    UTC 27.10.2019 00:00 Local 27.10.2019 02:00
    UTC 27.10.2019 00:15 Local 27.10.2019 02:15
    UTC 27.10.2019 00:30 Local 27.10.2019 02:30
    UTC 27.10.2019 00:45 Local 27.10.2019 02:45
    UTC 27.10.2019 01:00 Local 27.10.2019 02:00
    UTC 27.10.2019 01:15 Local 27.10.2019 02:15
    UTC 27.10.2019 01:30 Local 27.10.2019 02:30
    UTC 27.10.2019 01:45 Local 27.10.2019 02:45
    UTC 27.10.2019 02:00 Local 27.10.2019 03:00
Der Test ist also ganz einfach
  Mit Zitat antworten Zitat