====== std.datetime ====== Datums- und Zeitformatierung über ein einheitliches ''int64''-Datetime-Handle. Unterstützt ISO 8601 (''FormatIso''), RFC 2822 (''FormatRfc2822''), lokalisierte Formate (''FormatLocale''), relative Ausgabe (»vor 2 Stunden«, ''FormatRelative''), Wochentag- und Monatsnamen, Timezone-Offset sowie Parsing von ISO-, RFC- und freien Formaten (''ParseFlexible''). Arithmetik: ''AddSeconds'', ''AddDays'', ''AddMonths'', ''AddYears'', ''DiffSeconds'', ''DiffDays''. Einsatzbereiche: Logging und Audit-Trails, HTTP-Header (''Date:'', ''Last-Modified:''), Kalender- und Buchungsanwendungen, Datenbankzeitstempel, SMTP- und IMAP-Nachrichten. **Autor:** Andreas Röne\\ **Copyright:** 2024-2025 Andreas Röne ---- ===== Funktionen ===== ^ Signatur ^ Sichtbarkeit ^ Beschreibung ^ | ''Format(datetime: int64, fmt: pchar, output: pchar): int64'' | pub | Formatiert Datetime nach benutzerdefiniertem Format | | ''FormatDate(year: int64, month: int64, day: int64, output: pchar): int64'' | pub | Formatiert Datum als String | | ''FormatTime(hour: int64, minute: int64, second: int64, output: pchar): int64'' | pub | Formatiert Uhrzeit als String | | ''FormatIso(datetime: int64, output: pchar): int64'' | pub | Formatiert Datetime im ISO-8601-Format | | ''FormatRfc2822(datetime: int64, output: pchar): int64'' | pub | Formatiert Datetime im RFC-2822-Format | | ''FormatLocale(datetime: int64, locale: pchar, output: pchar): int64'' | pub | Formatiert Datetime lokalisiert nach Locale | | ''ParseDate(input: pchar, year: int64, month: int64, day: int64): int64'' | pub | Parst Datumsstring in Jahr/Monat/Tag | | ''ParseTime(input: pchar, hour: int64, minute: int64, second: int64): int64'' | pub | Parst Zeitstring in Stunde/Minute/Sekunde | | ''ParseIso(input: pchar, result: int64): int64'' | pub | Parst ISO-8601-Datetime-String | | ''ParseRfc2822(input: pchar, result: int64): int64'' | pub | Parst RFC-2822-Datetime-String | | ''ParseFlexible(input: pchar, result: int64): int64'' | pub | Parst Datum in freiem Format automatisch | | ''FormatRelative(datetime: int64, output: pchar): int64'' | pub | Gibt relative Zeitangabe aus (»vor X Stunden«) | | ''FormatDuration(seconds: int64, output: pchar): int64'' | pub | Formatiert Dauer in lesbaren Text | | ''FormatDurationShort(seconds: int64, output: pchar): int64'' | pub | Formatiert Dauer als Kurzform | | ''WeekdayShort(weekday: int64): pchar'' | pub | Gibt Wochentag-Kürzel zurück | | ''WeekdayLong(weekday: int64): pchar'' | pub | Gibt ausgeschriebenen Wochentagnamen zurück | | ''MonthShort(month: int64): pchar'' | pub | Gibt Monats-Kürzel zurück | | ''MonthLong(month: int64): pchar'' | pub | Gibt ausgeschriebenen Monatsnamen zurück | | ''GetTimezoneOffset(): int64'' | pub | Liest lokalen Timezone-Offset in Sekunden | | ''FormatTimezoneOffset(offset_seconds: int64, output: pchar): int64'' | pub | Formatiert Timezone-Offset als String | | ''DaysInMonth(year: int64, month: int64): int64'' | pub | Gibt Anzahl Tage im Monat zurück | | ''WeekNumber(year: int64, month: int64, day: int64): int64'' | pub | Berechnet ISO-Wochennummer des Datums | | ''DayOfYear(year: int64, month: int64, day: int64): int64'' | pub | Gibt Tagesnummer im Jahr zurück | | ''ToUnixTimestamp(datetime: int64): int64'' | pub | Wandelt Datetime in Unix-Timestamp um | | ''FromUnixTimestamp(timestamp: int64): int64'' | pub | Erstellt Datetime aus Unix-Timestamp | | ''ToMilliseconds(datetime: int64): int64'' | pub | Wandelt Datetime in Millisekunden um | | ''FromMilliseconds(ms: int64): int64'' | pub | Erstellt Datetime aus Millisekunden-Wert | | ''IsValidDate(year: int64, month: int64, day: int64): bool'' | pub | Prüft ob Datum kalendarisch gültig ist | | ''IsValidTime(hour: int64, minute: int64, second: int64): bool'' | pub | Prüft ob Uhrzeit gültig ist | | ''IsValidDateTime(year: int64, month: int64, day: int64, hour: int64, minute: int64, second: int64): bool'' | pub | Prüft ob Datum und Uhrzeit gültig sind | | ''AddSeconds(datetime: int64, seconds: int64): int64'' | pub | Addiert Sekunden zum Datetime-Wert | | ''AddDays(datetime: int64, days: int64): int64'' | pub | Addiert Tage zum Datetime-Wert | | ''AddMonths(datetime: int64, months: int64): int64'' | pub | Addiert Monate zum Datetime-Wert | | ''AddYears(datetime: int64, years: int64): int64'' | pub | Addiert Jahre zum Datetime-Wert | | ''DiffSeconds(datetime1: int64, datetime2: int64): int64'' | pub | Differenz zweier Datetimes in Sekunden | | ''DiffDays(year1: int64, month1: int64, day1: int64, year2: int64, month2: int64, day2: int64): int64'' | pub | Differenz zweier Daten in Tagen |