Unix 時間を日付に:Unix タイムスタンプを読みやすい時刻に変換
Unix 時間を日付形式に変換する実践ガイド:UTC・ローカルタイムゾーン・ISO 8601・データベースの datetime・読みやすい出力。Unix タイムスタンプから日付、Linux 時間から日付、よくある秒対ミリ秒の誤りを扱います。
Unix 時間を日付に変換するとは
Unix 時間は、1970 年 1 月 1 日 00:00:00 UTC からの経過時間を数える数値です。Unix 時間を日付に変換するとは、その数値を暦日・時刻・タイムゾーン対応の表示に変えることです。タイムスタンプ自体はタイムゾーンに依存せず、UTC かローカル時刻かは、人にどう見せるかにのみ影響します。
手早い変換ルール
まず単位を見分けます。現代の 10 桁の Unix タイムスタンプは通常秒、13 桁は通常ミリ秒です。JavaScript Date はミリ秒を期待し、Linux・Python・PHP・Go・多くのデータベース関数は通常秒で扱います。
- Unix seconds to JavaScript Date: new Date(seconds * 1000)
- Unix milliseconds to JavaScript Date: new Date(milliseconds)
- Linux command: date -u -d @1700000000
- Python UTC datetime: datetime.fromtimestamp(seconds, tz=timezone.utc)
- PostgreSQL: SELECT to_timestamp(1700000000)
Unix タイムスタンプ → 日付の例
例は、値が秒・ミリ秒・別の単位のどれかをすばやく確認する最速の方法です。変換後の年が 1970 年付近なら、ミリ秒を期待する API に秒を渡した可能性があります。年が遠い未来なら、秒を期待する API にミリ秒を渡した可能性があります。
- エポックからの 0 秒 = 1970-01-01 00:00:00 UTC
- エポックからの 1700000000 秒 = 2023-11-14 22:13:20 UTC
- エポックからの 1700000000000 ミリ秒 = 2023-11-14 22:13:20 UTC
- エポックからの -86400 秒 = 1969-12-31 00:00:00 UTC
- エポックからの 1767225600 秒 = 2026-01-01 00:00:00 UTC
UTC 日付 vs ローカル日付
Unix タイムスタンプは 1 つの正確な瞬間を表します。UTC はログ・API・デバッグに最も安全な基準です。ローカル時刻は UI・カレンダー・レポートに便利です。同じ Unix タイムスタンプでも、特に UTC の深夜付近では、ニューヨーク・ロンドン・上海・東京で異なる暦日として表示されます。
- サーバーやリージョンをまたいでイベントを比較するときは UTC を使う
- アプリで日付を表示するときはユーザーの IANA タイムゾーンを使う
- 機械可読の UTC 出力には Z 付きの ISO 8601 を使う
- ローカルの暦日が重要なときはタイムゾーンコンバーターを使う
Unix 時間 → 日付の FAQ
- Unix 時間を日付に変換するには?
- 値が秒かミリ秒かを見分け、タイムスタンプ コンバーターか言語の API で変換します。JavaScript では、値を new Date() に渡す前に秒を 1000 倍します。
- Linux 時間は Unix 時間と同じ?
- 通常のタイムスタンプ変換では同じです。Linux 時間は Unix 時間です:1970-01-01 00:00:00 UTC からの秒です。
- なぜ私の Unix タイムスタンプが 1970 年に変換される?
- たいていは秒のタイムスタンプがミリ秒として扱われたことを意味します。JavaScript Date で変換する前に、10 桁の秒値を 1000 倍してください。
- Excel で Unix 時間を日付に変換するには?
- Excel には Unix エポックがないため、秒の値を 86400 で割り、1970 年の日付シリアルを足します:=A1/86400 + DATE(1970,1,1)。その後セルを日付として書式設定します。ミリ秒の場合は 86400000 で割ります。
More posts
UTC 時刻とは?意味・オフセット・変換を解説エポック タイムスタンプを解説:Unix 時間、POSIX 時間、1970 年以降の秒epoch コンバーター ガイド:エポック時間・Unix 時間・タイムスタンプを変換日付を epoch に:時刻を Unix タイムスタンプまたはエポック時間に変換epoch ミリ秒を日付に:13 桁のタイムスタンプと long 値を変換現在の Unix タイムスタンプ:エポック時計、UTC 時刻、ライブの Unix 時間2026 年初の Unix タイムスタンプ:1767225600 を解説JavaScript Date.now():Unix タイムスタンプの取得と変換ミリ秒 vs 秒:あらゆるアプリを壊す単位の混同データベースでのタイムスタンプ保存:DATETIME vs INT vs BIGINTライブラリなしで JavaScript のタイムゾーン正確な日付整形あらゆる開発者が出荷したことのある 7 つの Unix タイムスタンプ バグエポック時間を解説:Unix タイムスタンプ ゼロとは?