Habe die Funktion GregorToStr noch einmal vereinfacht.
Sie heißt jetzt GregorToDate und gibt jetzt statt einem String einen Datumswert zurück.
Delphi-Quellcode:
//Wolfgang Mix - Delphi-Praxis
//Returns date of a Gregorian day number; 1 = 1582-10-15; 152385 = 2000-1-1
function GregorToDate(n:longint):TDate;
begin
if (n >= 1)
and (n <= 3074324)
then
Result := n - 115859
else
raise Exception.CreateFmt('
GregorToDate(%d) - invalid n', [n])
end;
Label1.Caption:=DateToStr(GregorToDate(152385));
// 2000-01-01