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 |
