Wie Sie zwischen Zeitformaten konvertieren
Zeitformate unterscheiden sich zwischen Systemen, APIs und Ländern. Unix-Zeitstempel in API-Antworten, ISO 8601 in Datenbanken, 12-Stunden-Uhren in den USA, 24-Stunden-Uhren in Europa — die Konvertierung dazwischen ist ein ständiger Bedarf für Entwickler und alle, die mit internationalen Daten arbeiten.
Übliche Zeitformate
| Format | Beispiel | Wird verwendet von |
|---|---|---|
| Unix-Zeitstempel (Sekunden) | 1712502600 | APIs, Datenbanken, JWT-Tokens |
| Unix-Zeitstempel (ms) | 1712502600000 | JavaScript, Java |
| ISO 8601 | 2026-04-07T14:30:00Z | JSON-APIs, Datenbanken, Logs |
| RFC 2822 | Mon, 07 Apr 2026 14:30:00 +0000 | E-Mail-Header, HTTP |
| 24-Stunden | 14:30 | Europa, Militär, Luftfahrt |
| 12-Stunden | 2:30 PM | USA, Alltagsgebrauch |
Schnellreferenz zur Umrechnung
12-Stunden zu 24-Stunden
| 12-Stunden | 24-Stunden |
|---|---|
| 12:00 AM (Mitternacht) | 00:00 |
| 1:00 AM | 01:00 |
| 12:00 PM (Mittag) | 12:00 |
| 1:00 PM | 13:00 |
| 6:00 PM | 18:00 |
| 11:59 PM | 23:59 |
Zeitstempel zu Datum
Verwenden Sie den Epoch-Konverter, um Unix-Zeitstempel sofort in lesbare Daten zu übersetzen und zurück. Der Konverter erkennt automatisch sowohl Sekunden- als auch Millisekundenformate.
Konvertierungsbeispiele in Code
Die meisten Entwickler müssen Zeitstempel irgendwann auch im Code konvertieren. Die Kern-APIs sind kurz:
- JavaScript —
new Date(1712502600 * 1000).toISOString()liefert2024-04-07T14:30:00.000Z. Vergessen Sie nicht, mit 1000 zu multiplizieren, da JavaScriptDateMillisekunden erwartet. - Python —
datetime.utcfromtimestamp(1712502600).isoformat()liefert2024-04-07T14:30:00. Verwenden Siedatetime.fromtimestamp(ts, tz=timezone.utc)für zeitzonenbewusste Objekte. - Shell —
date -u -d @1712502600 +"%Y-%m-%dT%H:%M:%SZ"unter Linux oderdate -u -r 1712502600 +"%Y-%m-%dT%H:%M:%SZ"unter macOS.
Häufige Fallstricke vermeiden
- Zeitzone vergessen — „2026-04-07 14:30" ist ohne Zone mehrdeutig. Hängen Sie bei ISO-Strings immer ein
Zoder einen+00:00-Offset an. - Sekunden und Millisekunden mischen — ein 10-stelliger Zeitstempel ist in Sekunden, ein 13-stelliger in Millisekunden. Sie zu vermischen erzeugt entweder Daten aus 1970 oder weit in der Zukunft.
- Auf lokale Serverzeit verlassen — wenn Ihr Server in UTC läuft und Ihre Nutzerin in Tokio sitzt, speichern Sie UTC und konvertieren Sie erst zur Anzeige. Den Server die Region erraten zu lassen, führt fast immer zu Fehlern, sobald Nutzer reisen oder die Sommerzeit umstellt.
- Datums-Strings nicht von Hand parsen — schneiden und kleben Sie Datumstrings nicht zusammen. Verwenden Sie
Date.parse(),dateutil.parseroder eine spezialisierte Bibliothek.
Tipps
- ISO 8601 für den Datenaustausch verwenden — eindeutig, sortiert sich als Zeichenkette korrekt und ist der Standard für JSON-APIs.
- Zeiten in UTC speichern — konvertieren Sie nur zur Anzeige in lokale Zeit. Das verhindert Zeitzonen-Bugs, wenn Ihre Nutzer in unterschiedlichen Regionen sind.
- Daran denken, dass JavaScript Millisekunden nutzt —
Date.now()liefert Millisekunden, keine Sekunden. Teilen Sie durch 1000, um einen Standard-Unix-Zeitstempel zu erhalten. - Konverter als Lesezeichen speichern — wenn Sie mit APIs oder Logs arbeiten, ist die Zeitstempel-Umrechnung etwas, das Sie wiederholt brauchen werden.
Häufig gestellte Fragen
Was ist das ISO-8601-Format?
ISO 8601 ist der internationale Standard zur Darstellung von Datum und Uhrzeit. Es sieht aus wie 2026-04-07T14:30:00Z, wobei T Datum und Uhrzeit trennt und Z UTC angibt. Es ist unabhängig von der Lokalisierung eindeutig.
Warum verwenden APIs Unix-Timestamps statt lesbarer Daten?
Unix-Timestamps sind eine einzelne Zahl und damit leicht zu speichern, sortieren und vergleichen. Sie sind zeitzonen-neutral (immer UTC) und benötigen weniger Platz als formatierte Datums-Zeichenketten. Der Kompromiss: Sie sind nicht menschenlesbar.
Was bedeutet das Z am Ende eines Zeitstempels?
Das Z steht für „Zulu time", einen anderen Namen für UTC (Coordinated Universal Time). Ein Timestamp, der mit Z endet, ist in UTC, nicht in Ortszeit.
Wie konvertiere ich 24-Stunden- in 12-Stunden-Zeit?
Für die Stunden 1-12 bleibt die Zeit gleich (AM für 0-11, PM für 12 hinzufügen). Für die Stunden 13-23 ziehen Sie 12 ab und fügen PM hinzu. 00:00 ist 12:00 AM (Mitternacht). 12:00 ist 12:00 PM (Mittag).