時間戳轉換器
免費時間戳線上轉換:Unix Timestamp 轉日期、日期轉時間戳,支援秒與毫秒、多時區同時顯示,並附 Excel、試算表與程式語言的換算公式。
把 Unix 時間戳(例如 1700000000)貼進輸入框,馬上顯示台灣時間、ISO 8601(UTC)、毫秒值與「幾天前」;切到「日期 → 時間戳」則是選日期時間換回時間戳。10 位數是秒、13 位數是毫秒,貼錯單位工具會提醒,全部在瀏覽器裡換算。
什麼是 Unix 時間戳
Unix 時間戳(Unix Timestamp、Epoch Time)是從 1970 年 1 月 1 日 00:00:00 UTC(Unix 紀元)起經過的秒數。它只是一個數字、沒有時區,世界上任何地方同一瞬間的時間戳都一樣,所以資料庫、API、日誌、JWT 的到期時間都愛用它;要給人看時,再依所在時區換成日期。台灣是 UTC+8,所以同一個時間戳,台灣時間比 UTC 多 8 小時。
| 時間戳(秒) | UTC | 台灣時間(UTC+8) |
|---|---|---|
| 0 | 1970-01-01 00:00:00 | 1970/01/01 08:00:00 |
| 1000000000 | 2001-09-09 01:46:40 | 2001/09/09 09:46:40 |
| 1700000000 | 2023-11-14 22:13:20 | 2023/11/15 06:13:20 |
| 1735689600 | 2025-01-01 00:00:00 | 2025/01/01 08:00:00 |
| 1767225600 | 2026-01-01 00:00:00 | 2026/01/01 08:00:00 |
| 2147483647 | 2038-01-19 03:14:07 | 2038/01/19 11:14:07 |
秒、毫秒怎麼分
現在的秒級時間戳是 10 位數、毫秒級是 13 位數(毫秒=秒 × 1000)。在「秒」模式貼上 13 位數、或在「毫秒」模式貼上 10 位數,工具會提醒你可能選錯單位。千分位逗號、底線、空白都會先自動拿掉,從報表或程式碼貼過來不用先整理。
| 語言/環境 | 取得現在的時間戳 | 單位 | 時間戳轉日期 |
|---|---|---|---|
| JavaScript | Date.now() | 毫秒 | new Date(秒 * 1000) |
| Python | time.time() | 秒(有小數) | datetime.fromtimestamp(秒) |
| PHP | time() | 秒 | date('Y-m-d H:i:s', 秒) |
| Java | System.currentTimeMillis() | 毫秒 | Instant.ofEpochSecond(秒) |
| Go | time.Now().Unix() | 秒 | time.Unix(秒, 0) |
| C# | DateTimeOffset.UtcNow.ToUnixTimeSeconds() | 秒 | DateTimeOffset.FromUnixTimeSeconds(秒) |
| MySQL | UNIX_TIMESTAMP() | 秒 | FROM_UNIXTIME(秒) |
| PostgreSQL | EXTRACT(EPOCH FROM now()) | 秒(有小數) | to_timestamp(秒) |
| Bash | date +%s | 秒 | date -d @秒 |
「轉日期」那一欄得到的是依執行環境時區顯示的時間;要固定台灣時間,請在程式裡指定 Asia/Taipei 時區。
轉換結果一次給你這些
- 秒與毫秒兩種值:不管輸入哪一種,結果都同時列出秒與毫秒,按旁邊的圖示就能複製。
- ISO 8601(UTC):例如 2023-11-14T22:13:20.000Z,最後的 Z 代表 UTC,API 與資料庫最常用這個格式。
- 相對時間:例如「3 天前」「2 年後」,看日誌時一眼知道離現在多久。
- 多個時區同時顯示:預設列出你電腦的時區與 UTC,可以再點選東京、紐約、倫敦等時區(不登入最多 3 個,登入後不限);UTC 偏移依那個時間點計算,紐約、雪梨這類有夏令時間的地方也會對。
- 即時時鐘:頁面上方一直跳動的是現在的秒與毫秒時間戳,點一下就複製。
- 日期 → 時間戳:選日期時間(依你電腦的時區)換成時間戳;按「使用目前時間」直接帶入現在。
Excel 與 Google 試算表怎麼換算
試算表的日期是「從 1899-12-30 起的天數」,1970-01-01 剛好是第 25569 天,所以秒級時間戳 ÷ 86400 再加 25569 就是日期序列值,把儲存格格式改成日期時間即可。
- 秒 → UTC 日期:=A1/86400+DATE(1970,1,1)
- 秒 → 台灣時間:=(A1+8*3600)/86400+DATE(1970,1,1)
- 毫秒 → 台灣時間:=(A1/1000+8*3600)/86400+DATE(1970,1,1)
- 台灣時間 → 秒:=(A1-DATE(1970,1,1))*86400-8*3600
例:1700000000 用第一條公式得到 45244.926(UTC 2023/11/14 22:13:20),用第二條得到 45245.259(台灣 2023/11/15 06:13:20)。
2038 年問題與可換算的範圍
很多舊系統用「有正負號的 32 位元整數」存秒級時間戳,最大只能到 2147483647,也就是 UTC 2038-01-19 03:14:07(台灣 11:14:07);再多 1 秒就溢位變成負數,時間會跳回 1901 年,這就是「2038 年問題」。資料庫欄位或嵌入式設備還用 32 位元存時間的,要在那之前換成 64 位元。
本工具用 JavaScript 的日期換算,範圍是正負 8,640,000,000,000 秒(約西元前 271821 年到西元 275760 年),2038 之後的時間照樣換得出來;超出範圍時會直接說明,不會算出錯的日期。
時間戳轉換器功能特點
- Unix 時間戳與日期時間互轉
- 秒級和毫秒級切換,位數不像所選單位時會提醒
- 多時區同時顯示,UTC 偏移依那個時間點計算(含夏令時間)
- 即時時鐘
- 附 Excel、Google 試算表、JavaScript、Python 換算公式
- 登入後可批量轉換、同時顯示超過 3 個時區
如何使用時間戳轉換器?
- 選擇轉換方向
- 輸入時間戳或選擇日期時間
- 用「秒/毫秒」切換選對單位
- 查看多種格式的轉換結果,點時區標籤看不同時區
時間戳轉換器常見問題
什麼是 Unix 時間戳?
Unix 時間戳是從 1970 年 1 月 1 日 00:00:00 UTC 起經過的秒數,不受時區影響,方便跨系統比較時間。例如 1700000000 是 UTC 2023-11-14 22:13:20,也就是台灣時間 2023/11/15 06:13:20。
秒和毫秒時間戳怎麼分辨?
看位數:秒級是 10 位數(例如 1700000000),毫秒級是 13 位數(例如 1700000000000)。JavaScript 的 Date.now() 回傳毫秒,PHP 的 time()、JWT 的 exp/iat 用秒。本工具請用「秒/毫秒」切換選擇單位;位數不像目前選的單位時,輸入框下方會提醒。
Excel 或 Google 試算表怎麼把時間戳轉成日期?
假設 A1 是秒級時間戳,輸入 =A1/86400+DATE(1970,1,1),再把儲存格格式設為日期時間,得到的是 UTC 時間。台灣時間要加 8 小時:=(A1+8*3600)/86400+DATE(1970,1,1)。毫秒級時間戳請先除以 1000。
JavaScript、Python 怎麼換算時間戳?
JavaScript:new Date(1700000000 * 1000) 把秒級時間戳轉成日期,Math.floor(Date.now() / 1000) 取得現在的秒級時間戳。Python:datetime.fromtimestamp(1700000000, tz=timezone.utc) 轉成 UTC 日期,datetime.now().timestamp() 取得現在的時間戳。
登入後有什麼額外功能?
登入後可以使用批量轉換,並同時顯示超過 3 個時區。
現在的 Unix 時間戳是多少?
看頁面上方的「目前時間」:左邊是你電腦時區的現在時間,右邊即時跳動的是秒級與毫秒級時間戳,點一下數字就會複製。要換算成別的時間,把數字貼進下面的輸入框即可。
timestamp 轉換出來的時間為什麼差 8 小時?
時間戳本身沒有時區,換成日期時要選時區:UTC 與台灣時間差 8 小時。程式或試算表若沒指定時區,常會顯示成 UTC;本工具同時列出台灣時間與 UTC,對照一下就知道是哪一種。
負數的時間戳是什麼意思?
代表 1970 年 1 月 1 日 UTC 之前的時間,例如 -86400 是 1969 年 12 月 31 日 00:00:00 UTC。本工具可以直接貼上負數換算。