UNIX時間 変換ツール
UNIXタイムスタンプ(エポック秒)と日時をその場で相互変換。 秒・ミリ秒の両方に対応し、日本時間(JST)とUTCを併記します。 ログの時刻を読みたいとき、APIで使う秒数を求めたいときに便利です。
日本時間(JST)での日時2020-01-01 09:00:00JSTもう一方の時間帯では 2020-01-01 00:00:00(UTC)
つまり:UNIX時間 1,577,836,800秒は、日本時間で2020-01-01 09:00:00のことです。UNIX時間は世界共通の1つの値で、見る時間帯(タイムゾーン)によって表示される日時が変わるだけです。
くわしい計算の内訳(参考)
| UNIX時間(秒) | 1,577,836,800 秒 |
|---|---|
| UNIX時間(ミリ秒)(秒 ×1000) | 1,577,836,800,000 ミリ秒 |
| 日本時間(JST・UTC+9) | 2020-01-01 09:00:00(JST) |
| 協定世界時(UTC) | 2020-01-01 00:00:00(UTC) |
| ISO 8601 形式(UTC・末尾Z) | 2020-01-01T00:00:00.000Z |
| 基準(エポック) | 1970-01-01 00:00:00(UTC) |
※ UNIX時間はうるう秒を数えず、1日=86,400秒として計算する定義です(うるう年は通常どおり反映)。 日本時間(JST)はUTC+9の固定で、日本に夏時間(サマータイム)はありません。ブラウザの時計やタイムゾーン設定に依存せず、UTC基準で厳密に変換しています。
代表的なUNIXタイムスタンプ早見表
よく目にする節目のUNIX秒を、日本時間(JST)とUTCに直したものです。 桁の感覚をつかむ参考にしてください。
| UNIX秒 | 意味 | 日本時間(JST) | UTC |
|---|---|---|---|
| 0 | エポック(基準) | 1970-01-01 09:00:00(JST) | 1970-01-01 00:00:00(UTC) |
| 946,684,800 | 2000年 | 2000-01-01 09:00:00(JST) | 2000-01-01 00:00:00(UTC) |
| 1,000,000,000 | 10億秒の節目 | 2001-09-09 10:46:40(JST) | 2001-09-09 01:46:40(UTC) |
| 1,577,836,800 | 2020年 | 2020-01-01 09:00:00(JST) | 2020-01-01 00:00:00(UTC) |
| 1,735,689,600 | 2025年 | 2025-01-01 09:00:00(JST) | 2025-01-01 00:00:00(UTC) |
| 2,000,000,000 | 20億秒の節目 | 2033-05-18 12:33:20(JST) | 2033-05-18 03:33:20(UTC) |
※ UNIX秒は世界共通の1つの値。JST列はUTC列より9時間あとになります。
UNIX時間の仕組み
UNIX時間は、1970年1月1日 00:00:00(UTC)を基準(エポック)とした経過秒数で時刻を表す方式です。 人が読む「年月日 時分秒」は時間帯ごとにずれますが、UNIX時間なら時間帯に関係なく1つの整数で表せるため、システム間の受け渡しに向いています。
変換の式
- UNIX時間 → 日時:エポック(1970-01-01 00:00:00 UTC)に経過秒を足して日時を求めます。 表示する時間帯がJSTなら、さらに+9時間して表示します。
- 日時 → UNIX時間:その日時をUTCの瞬間に直し、エポックからの差を秒で数えます。 入力がJSTなら−9時間してUTCに揃えてから計算します。
- 秒とミリ秒:標準は秒。ミリ秒は「秒×1000」です(例: 10桁=秒、13桁=ミリ秒のことが多い)。
使いどころ
- ログ解析:サーバーやアプリのログに記録されたUNIX秒を、読める日時に直すとき。
- プログラム・API:APIのパラメータやトークンの有効期限(exp)などで使う秒数を求めるとき。
- 時差の確認:同じ瞬間がJSTとUTCでどう表示されるかを見比べるとき。
注意点
- UNIX時間はうるう秒を数えず、1日=86,400秒固定の定義です(うるう年は通常どおり反映)。
- 日本にサマータイムはなく、JSTは常にUTC+9です。
- 32ビットの秒で扱うシステムは2038年1月19日(UTC)付近で桁あふれする「2038年問題」が知られています。本ツールは64ビット相当で計算するため影響を受けません。
よくある質問
- UNIX時間(UNIXタイムスタンプ)とは何ですか?
- 協定世界時(UTC)の1970年1月1日0時0分0秒(エポックと呼びます)からの経過秒数で、ある瞬間を1つの整数で表す方式です。タイムゾーンに依存せず世界共通の値になるため、プログラムの内部処理やログ、API、データベースで広く使われます。
- 秒とミリ秒、どちらで指定すればいいですか?
- UNIX時間の標準は「秒」です。ただしJavaScriptのDate.now()など一部のシステムは「ミリ秒(秒×1000)」で扱います。桁数が10桁前後なら秒、13桁前後ならミリ秒のことが多いです。本ツールは秒・ミリ秒の両方に対応しているので、入力欄の単位を切り替えてください。
- 日本時間とUTCで表示が違うのはなぜですか?
- UNIX時間そのものは世界共通の1つの値ですが、それを人間が読む日時に直すときは時間帯(タイムゾーン)の分だけずれます。日本時間(JST)はUTCより9時間進んでいるため、同じUNIX時間でもJST表示はUTC表示より9時間あとになります。本ツールは両方を併記します。
- うるう秒やサマータイムは反映されますか?
- UNIX時間は定義上うるう秒を数えず、1日を常に86,400秒として扱います。うるう年は通常のカレンダーどおり正しく反映されます。また日本にはサマータイム(夏時間)がないため、JSTは常にUTC+9の固定です。本ツールはブラウザの時計設定に左右されず、UTC基準で厳密に計算します。
出典・計算の根拠
- The Open Group Base Specifications(POSIX)「Seconds Since the Epoch」=UNIX時間の定義(1970-01-01 00:00:00 UTC を起点とする経過秒数・うるう秒を数えない)。
- ECMAScript(JavaScript)言語仕様「Time Values and Time Range」=Dateは1970-01-01T00:00:00Z起点のミリ秒で時刻を表す。
- 日本標準時(JST)=協定世界時(UTC)+9時間の固定オフセット(夏時間なし)。
本ツールは定義どおりの厳密変換です(概算ではありません)。ただし表示はお使いの環境のフォント・桁区切りで見え方が変わることがあります。