Unix 時間戳記轉換器
將 Unix 時間戳記(秒或毫秒)轉換成日期與時間,或將日期與時間轉換成 Unix 時間戳記。並排顯示 UTC 與您所選的 UTC 偏移。
什麼是 Unix 時間?
Unix 時間(也稱為 epoch time 或 Unix 時間戳記)是自 1970 年 1 月 1 日 00:00:00 UTC(epoch)起經過的秒數。程式、資料庫與日誌用它把某個時間點存成單一整數。
- 每一天都固定算作 86,400 秒,不計入閏秒(POSIX 的定義規定每一天都必須正好以 86400 秒計算)。
- 以毫秒為單位的 Unix 時間(例如 JavaScript 的
Date.now())是以秒為單位數值的 1,000 倍。**以秒為單位的數值約 10 位數,以毫秒為單位的約 13 位數。**單位搞混會讓日期差很遠,因此本工具會依位數提示可能的混淆。
UTC 與所選的偏移
Unix 時間在全世界都是同一個值。將它轉換成日期與時間時,由您選擇要顯示哪個偏移。
- UTC(協調世界時,偏移 +00:00)一律會顯示。它是本頁面的預設偏移。
- 所選的偏移是您自行選擇的與 UTC 的固定偏移。
- 本工具不處理日光節約時間或當地規則的變更,也不使用您瀏覽器的時區。對於實施日光節約時間的地區,請自行選擇當時適用的偏移(例如 +01:00 或 +02:00)。
1970 年以前(負的 Unix 時間)
1970 年以前的日期與時間以負的 Unix 時間表示(−1 = 1969-12-31 23:59:59 UTC)。本工具支援負值。
- 許多實作與程式語言對 1970 年以前的日期使用負的時間戳記。
- 然而,POSIX 的公式是針對 1970 年以後的非負值所寫,負值的處理方式在不同實作與系統之間可能有所不同。本工具把同一個公式(1 天 = 86,400 秒)延伸到過去。其他系統如何處理相同的值,請另行確認。
- 支援的範圍是從 1900-01-01 00:00:00 UTC(−2,208,988,800 秒)到 2100-12-31 23:59:59 UTC(4,133,980,799 秒)。
2038 年問題
以 32 位元有號整數儲存 Unix 時間的系統,在 **2,147,483,647 秒(2038-01-19 03:14:07 UTC)**之後會溢位。本工具也會顯示結果是否能放入 32 位元有號整數(−2,147,483,648 到 2,147,483,647)。
範例
- 0 = 1970-01-01 00:00:00 UTC(星期四)
- 1,000,000,000 = 2001-09-09 01:46:40 UTC
- 1,700,000,000 = 2023-11-14 22:13:20 UTC
- 2,147,483,647 = 2038-01-19 03:14:07 UTC
- −1 = 1969-12-31 23:59:59 UTC
注意事項
- 您輸入的 Unix 時間必須是整數(秒:−2,208,988,800 到 4,133,980,799;毫秒:其 1,000 倍)。超出範圍的值會視為錯誤。
- 轉換日期與時間時,秒為 0 到 59(不支援閏秒「60」)。
- 「插入目前時間」按鈕會把您裝置時鐘上的時間以 Unix 秒數填入。計算本身不使用時鐘,也不會傳送或儲存任何資料。
- 若要加減天數、週數、月數或年數,請使用日期計算機。
資料來源
- The Open Group,POSIX.1-2017 Base Definitions,4.16 Seconds Since the Epoch(自 epoch 起的秒數公式、每天 86,400 秒、不計閏秒,以及未定義負值;2026 年 10 月 31 日確認)。
常見問題
我的 Unix 時間有 13 位數,該怎麼辦?
那是以毫秒為單位的值。請將輸入的單位設為毫秒。約 10 位數的值是以秒為單位。
Unix 時間會隨時區而改變嗎?
不會。Unix 時間是一個值,在世界各地都代表同一個時刻。只有在將它轉換成日期與時間時,才需要選擇要顯示哪個偏移。
閏秒怎麼處理?
Unix 時間不計入閏秒(一天一律為 86,400 秒)。本工具依此標準定義計算,不處理閏秒。