Unix Timestamp Converter: Zeitstempel in Datum und Uhrzeit umrechnen
Unix-Timestamp-Converter
Die Zahl 1704067200 steht für den 1. Januar 2024 um 00:00:00 Uhr UTC. Solche Zeitangaben begegnen einem in Datenbanken, Protokolldateien und Programmierschnittstellen. Ein Unix Timestamp Converter übersetzt sie in ein lesbares Datum – oder berechnet den Zeitstempel zu einer Datumsangabe.
Mit unserem Rechner auf rechenhirn.de lassen sich solche Zeitwerte umrechnen. Im Folgenden erkläre ich, worauf es bei Sekunden, Millisekunden und Zeitzonen ankommt.
Was ein Unix-Zeitstempel zählt
Ein Unix-Timestamp beschreibt die seit dem 1. Januar 1970, 00:00:00 Uhr UTC vergangenen Sekunden. Dieser Ausgangspunkt heißt Unix-Epoche. In der üblichen Unix-Zeitrechnung werden Schaltsekunden nicht separat mitgezählt.
Der Zahlenwert enthält selbst keine Zeitzonenangabe. Erst bei der Darstellung als Datum wird festgelegt, ob die Ausgabe beispielsweise in UTC oder in der Zeitzone Europe/Berlin erfolgt.
Sekunden oder Millisekunden?
Ein häufiger Umrechnungsfehler entsteht durch unterschiedliche Einheiten. Klassische Unix-Zeitstempel verwenden Sekunden. JavaScript und manche Schnittstellen arbeiten dagegen mit Millisekunden seit derselben Epoche.
- Sekunden: 1704067200
- Millisekunden: 1704067200000
Beide Werte bezeichnen denselben Zeitpunkt. Für die Umrechnung gilt:
Millisekunden = Sekunden × 1.000
Sekunden = Millisekunden ÷ 1.000
Beispiel: 1.704.067.200.000 ÷ 1.000 = 1.704.067.200 Sekunden.
Bei heutigen Datumswerten sind zehn Stellen für Sekunden und dreizehn Stellen für Millisekunden typisch. Mein Hinweis: Die Stellenzahl ist nur eine Orientierung; entscheidend ist die Einheit der Datenquelle.
Warum die Zeitzone das angezeigte Datum verändert
Der Zeitstempel 1704067200 entspricht in UTC dem 1. Januar 2024 um 00:00 Uhr. In Deutschland ist es zu diesem Zeitpunkt bereits 01:00 Uhr MEZ.
Für Europe/Berlin beträgt der Abstand zu UTC während der Winterzeit eine Stunde und während der Sommerzeit zwei Stunden. Eine pauschale Addition von einer Stunde funktioniert deshalb nicht für das ganze Jahr. Für die Umrechnung eines lokalen Datums muss die passende Zeitzone berücksichtigt werden.
Zeitabstände mit Unix-Timestamps berechnen
Die Differenz zweier Zeitstempel ergibt die verstrichene Zeit in Sekunden:
1704153600 − 1704067200 = 86400 Sekunden
86400 ÷ 3600 = 24 Stunden
Das ist etwa für Laufzeiten oder Protokollauswertungen hilfreich. Zwischen zwei lokalen Mitternachtszeitpunkten können bei einer Zeitumstellung allerdings auch 23 oder 25 Stunden liegen.
Umrechnung in JavaScript
Wer einen Unix-Timestamp aus einer Schnittstelle verarbeitet, muss Sekunden für das JavaScript-Datumsobjekt zunächst mit 1.000 multiplizieren:
const timestamp = 1704067200;
const datum = new Date(timestamp * 1000);
console.log(datum.toISOString());
// 2024-01-01T00:00:00.000Z
Das Z kennzeichnet UTC. Für die Rückrichtung liefert Math.floor(datum.getTime() / 1000) einen ganzzahligen Unix-Zeitstempel in Sekunden.