Encoders & Utilities

Unix Timestamp i kalkulator dat

Konwertuj epoki Unix na czytelne daty, licz arytmetykę i różnice między datami.

O tym narzędziu

Unix Timestamp & Date Calculator konwertuje między integerowymi Unix epoch a datami ISO 8601 / formatowanymi lokalnie w obu kierunkach. Wklej liczbę, a narzędzie powie, czy nakarmiłeś je sekundami (10 cyfr), milisekundami (13 cyfr), mikrosekundami (16) czy nanosekundami (19) — i wyrenderuje odpowiadającą datę w UTC, Twojej lokalnej strefie czasowej i dowolnej strefie czasowej wybranej z listy IANA. Idąc w drugą stronę, wklej string daty w dowolnym popularnym formacie i dostań epoch.

Drugi tryb obsługuje arytmetykę dat: dodawanie lub odejmowanie dni, godzin, minut od daty bazowej; obliczanie różnicy między dwoma datami jako dni/godziny/minuty/sekundy (lub "3 lata, 2 miesiące, 14 dni" jeśli wolisz jednostki kalendarzowe). Cała matematyka działa w przeglądarce używając Temporal gdzie dostępne i biblioteki fallback gdzie indziej — bez niespodzianek strefy czasowej z przejść DST, sekund przestępnych (ignorowanych, jak w samym Unix time) lub rolloveru 2038 (obsługujemy 64-bitowe timestampy natywnie).

Kiedy używać tego narzędzia

  • Debugowanie logów. Wpis logu z epoch 1747459200 — wklej, zobacz "17 maja 2026 04:00 UTC", gotowe.
  • Sanity check daty w bazie. Zweryfikuj, że wartość przechowywana jako BIGINT ms faktycznie dekoduje się do oczekiwanej daty człowieka.
  • Arytmetyka SLA / cron. "Co jest 72 godziny od teraz w czasie Tokio?" — odpowiedziane w dwóch kliknięciach.
  • Wygaśnięcie tokena. Claim exp JWT to epoch — wklej go tu dla odpowiedzi czytelnej dla człowieka.

O problemie 2038

32-bitowe signed Unix timestampy przelewają się o 03:14:07 UTC 19 stycznia 2038 (bug "Y2038"). Naprawą jest użycie 64-bitowych timestampów, co domyślnie robi większość nowoczesnych języków i baz danych. Nasz kalkulator używa 64-bit wewnętrznie — wartości poza 2038 i znacznie poza rokiem 100 000 są obliczane poprawnie. Legacy systemy na embedded hardware to pozostała powierzchnia ekspozycji.

Najczęstsze pytania

Dlaczego mój "timestamp" ma 13 cyfr?

Jest w milisekundach, nie sekundach. JavaScript, Java i wiele nowszych API domyślnie używa rozdzielczości milisekundowej; klasyczny Unix to sekundy. 10 cyfr = sekundy (obecna era przez 2286), 13 cyfr = milisekundy, 16 cyfr = mikrosekundy, 19 cyfr = nanosekundy. Nasz parser wykrywa precyzję po liczbie cyfr i konwertuje odpowiednio.

Czy narzędzie obsługuje strefy czasowe poprawnie?

Tak — każda konwersja pokazuje UTC obok wybranej strefy czasowej (domyślnie lokalna strefa Twojej przeglądarki). Przejścia czasu letniego są honorowane dla stref IANA (np. "Europe/Berlin" obsługuje przejścia CET/CEST automatycznie). Bądź ostrożny ze stringami fixed-offset ("+02:00") — wyglądają tak samo w normalny dzień, ale ignorują DST.

Dlaczego moja odpowiedź arytmetyki lat różni się od prostego dzielenia?

Bo jednostki kalendarzowe są nierówne. "Rok" średnio to 365,2425 dni; niektóre mają 365, niektóre 366. Odejmowanie dwóch dat w "latach i miesiącach" wymaga prawdziwego kalendarzowego spaceru, nie tylko dzielenia sekund. Nasze narzędzie robi ten spacer; proste przybliżenie seconds / (365 * 86400) dryfuje o ~6 godzin rocznie.

Co to jest problem Y2038?

32-bitowy signed integer Unix timestamp przelewa się o 03:14:07 UTC 19 stycznia 2038. Systemy nadal używające 32-bitowego czasu przejdą do ujemnej wartości (interpretowanej jako 13 grudnia 1901). Nowoczesny Linux, Windows i macOS używają 64-bitowych timestampów, co wystarczy do roku 292 277 026 596. Legacy systemy embedded to pozostałe ryzyko.