Einzelnen Beitrag anzeigen

PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#1

GetStartOfFirstWeekInYearISO8601

  Alt 10. Jul 2006, 02:08
Ich habe eine Routine gesucht, die mir das Datum des Beginns der ersten Woche in einem Jahr liefert (nach ISO 8601). Da ich keine gefunden habe, habe ich mir selber eine geschrieben:

Delphi-Quellcode:
function GetStartOfFirstWeekInYearISO8601(const Y: integer): TDate;
var
  i, W: integer;
  TestDatum: TDate;
const
  p: integer = 3;
begin
  for i := 1 to 7 do
  begin
    TestDatum := EncodeDate(Y, 1, i);
    W := WeekOfTheYear(TestDatum - p);
    if W = 1 then
    begin
      Result := TestDatum - p;
      BREAK;
    end;
  end;
end;
Gibt es eine einfachere Methode, um zu diesem Ergebnis zu kommen?
Ein kleines Testprogramm habe ich angehängt.
Angehängte Dateien
Dateityp: zip getdayoffirstweekinyear_190.zip (2,7 KB, 4x aufgerufen)
  Mit Zitat antworten Zitat