Konverter Epoch

saat ini Unix Epoch

Sebuah baris log menyebut 1729523412, sebuah API mengembalikan 1729523412000, sebuah database menulis 1729523412.845293. Ketiganya adalah momen yang sama sejak 1 Januari 1970 UTC: yang pertama dalam detik, yang kedua dalam milidetik, dan yang ketiga dalam detik dengan bagian pecahan. Konverter ini bekerja dua arah: tempel timestamp untuk membaca tanggal dan waktu UTC, atau masukkan tanggal untuk mendapatkan nilai epoch dalam detik atau milidetik.

Cara mengonversi epoch timestamp

  1. 1

    Tempel timestamp

    Nilai dalam detik (10 digit), milidetik (13 digit), atau dengan bagian pecahan seperti 1729523412.845293.

  2. 2

    Pilih presisi

    Sakelar di atas kolom masukan memilih detik atau milidetik. Hasil tanggal mempertahankan pecahan detik hingga mikrodetik.

  3. 3

    Baca tanggal UTC

    Nilai yang dikonversi tampil dalam UTC dengan format YYYY-MM-DD HH:MM:SS.mikrodetik, siap disalin.

  4. 4

    Balikkan konversinya

    Masukkan tanggal dan waktu dalam UTC untuk mendapatkan nilai epoch dalam detik atau milidetik.

Apa itu “epoch”

Unix time mengukur detik (atau pecahannya) sejak 1 Januari 1970 00:00:00 UTC, dikenal sebagai Unix epoch. Ini adalah timestamp yang dapat dibaca mesin yang dominan dalam perangkat lunak:

  • Sistem POSIX: time() mengembalikan detik sejak epoch.
  • JavaScript: Date.now() mengembalikan milidetik.
  • Java: System.currentTimeMillis() mengembalikan milidetik.
  • Go: time.Now().Unix() mengembalikan detik; UnixNano() mengembalikan nanodetik.

Presisi berdasarkan besaran

Jumlah digit Presisi Contoh
10 detik 1.729.523.412
13 milidetik 1.729.523.412.000
16 mikrodetik 1.729.523.412.000.000
19 nanodetik 1.729.523.412.000.000.000

Konverter ini menerima detik, milidetik, dan nilai dengan bagian pecahan; sesuaikan sakelar presisi dengan masukan Anda.

Timestamp penanda

  • 0 - 1 Januari 1970 00:00:00 UTC. Epoch itu sendiri.
  • 1.000.000.000 - 9 September 2001 01:46:40 UTC. Momen “satu miliar detik” yang umum dirayakan.
  • 1.234.567.890 - 13 Februari 2009 23:31:30 UTC.
  • 2.147.483.647 - 19 Januari 2038 03:14:07 UTC. Masalah Y2K38: overflow 32-bit bertanda.
  • 10.000.000.000 - Masa depan jauh: 20 November 2286 17:46:40 UTC.

Masalah Y2K38

Sistem yang menyimpan Unix time dalam integer 32-bit bertanda overflow pada 2.147.483.647 detik (19 Januari 2038). Sistem modern memakai integer 64-bit, yang mendorong masalah jauh melampaui kematian termal Matahari. Sistem embedded lawas dan database lama mungkin masih terdampak; periksa stack Anda.

Kehalusan zona waktu

Epoch time secara inheren UTC. Saat Anda mengonversinya untuk ditampilkan, Anda menerapkan zona waktu:

  • Nama IANA (America/Los_Angeles, Europe/Berlin): menangani daylight saving otomatis.
  • Offset (-08:00, +05:30): offset tetap, tanpa kesadaran DST.
  • Singkatan (PST, CEST): ambigu; wilayah berbeda memakai singkatan yang sama. Hindari untuk penyimpanan.

Aturan DST berubah seiring waktu. Timestamp historis di America/New_York memakai aturan DST yang berlaku pada tanggal itu, bukan aturan hari ini. Konverter ini selalu menampilkan UTC. Untuk melihat momen tersebut di wilayah Anda, tafsirkan hasil UTC dengan nama IANA atau offset tetap.

ISO 8601 vs RFC 2822

Untuk timestamp dalam format data:

  • ISO 8601 (2024-10-21T14:30:12Z): standar modern yang lebih disukai, bisa diurutkan, tidak ambigu.
  • RFC 2822 (Mon, 21 Oct 2024 14:30:12 +0000): dipakai di header HTTP dan email.

Untuk ditampilkan ke manusia: format lokal mengikuti konvensi locale mereka.

Bekerja dengan detik kabisat

Waktu POSIX tidak menghitung detik kabisat; ia diam-diam melompat mundur satu detik saat detik kabisat disisipkan. TAI (International Atomic Time) menghitungnya. Untuk sebagian besar kode aplikasi, POSIX benar; untuk astronomi, geodesi, dan pengukuran waktu presisi, gunakan TAI atau UTC dengan kesadaran akan detik kabisat.

Pertanyaan yang Sering Diajukan

Periksa sakelar presisi: nilai milidetik (13 digit) yang dibaca sebagai detik menghasilkan tanggal yang sangat jauh di masa depan. Alat selalu menampilkan UTC; bandingkan hasilnya dengan offset lokal Anda sebelum mengonversi.

Ya. Alat menerima timestamp negatif, yang mewakili tanggal sebelum Unix epoch. 31 Desember 1969 23:59:59 UTC adalah -1.

Simpan epoch (UTC) dan nama zona waktu IANA sebagai field terpisah. ISO 8601 dengan offset (mis. 2024-10-21T14:30-07:00) membawa offset, tetapi kehilangan kemampuan menafsirkan ulang di bawah aturan DST yang berubah. Gunakan nama IANA untuk penyimpanan kanonis.

Tidak. Nilai dikirim ke server hanya untuk menjalankan konversi dan tidak disimpan atau dicatat. Alat mencatat hitungan anonim dari konversi, tanpa nilai tersebut.

Alat Terkait

Alat ini tersedia dalam bahasa lain