Pack Camo

UNIX時間変換ツール

エポック秒・ミリ秒と日時を、あらゆるタイムゾーンで相互変換。

処理はすべて端末内で完結し、アップロードは一切ありません。

現在
秒—
ミリ秒—

秒として読み取りました。

エポック時間を読める日時に、日時をエポック時間に変換

このUNIXタイムスタンプ変換ツールは、エポック値を読みやすい日時に変換します。UTC、あなたのタイムゾーン、その他任意のタイムゾーンで表示でき、日時からタイムスタンプへの逆変換も可能です。秒・ミリ秒・マイクロ秒・ナノ秒を自動で判別し、ISO 8601 などの日付文字列も読み取り、結果を ISO 8601、RFC 2822、HTTP 日付、「3日前」のような相対時間で表示します。ライブ時計が現在のUNIX時間を表示し、一括モードではリスト全体をまとめて変換できます。すべてブラウザ内で動作します。

UNIXタイムスタンプの変換方法

  1. 11700000000 や 1700000000123 のようなタイムスタンプを タイムスタンプ → 日時 に貼り付けます。単位は桁数から判別されます。推測が違う場合は自分で選んでください。
  2. 2UTC、あなたのタイムゾーン、ツールバーで選んだタイムゾーンでの日時を、ISO 8601、RFC 2822、相対表記とともに確認できます。各項目の横のコピーアイコンをクリックしてください。
  3. 3逆方向に変換するには 日時 → タイムスタンプ を開き、日付・時刻・タイムゾーンを選んで、秒またはミリ秒をコピーします。
  4. 4多数の値を変換するには 一括 を開き、1行に1つずつ貼り付けて、結果をコピーするか CSV でダウンロードします。

UNIXタイムスタンプとは?

UNIX時間は、UNIXエポックである 1970年1月1日 00:00:00 UTC からの経過秒数です。タイムゾーンを持たない単一の数値なので、時刻の保存や比較に最適です。1700000000 は世界中どこでも 2023年11月14日 22:13:20 UTC を指し、表示だけが場所によって変わります。

1970年より前の時刻は負の値になり(-86400 は 1969年12月31日)、UNIX時間はうるう秒を無視します。1日は常にちょうど 86,400 秒なので計算がシンプルに保たれ、うるう秒はカウントされず時計側で吸収されます。

秒・ミリ秒・マイクロ秒・ナノ秒

自動判別は桁数で行います。11桁までは秒、12〜14桁はミリ秒、15〜17桁はマイクロ秒、それ以上はナノ秒です。1973年から5138年までの日付なら正しく判別されます。1970年にごく近い日付の場合は、単位を自分で選んでください。

秒(10桁)
従来のUNIX時間。UNIXツール、PHP の time()、Python の int(time.time())、JWT の exp・iat クレーム、多くのデータベースで使われます。例:1700000000。
ミリ秒(13桁)
JavaScript の Date.now()、Java の System.currentTimeMillis()、多くの JSON API で使われます。例:1700000000123。
マイクロ秒(16桁)
PostgreSQL の内部表現、Python の datetime の精度、一部のログシステムで使われます。例:1700000000123456。
ナノ秒(19桁)
Go の time.UnixNano()、InfluxDB、Prometheus で使われます。例:1700000000123456789。このツールは任意精度演算を使うため、正確に保持されます。

日付フォーマットの解説

日付文字列を貼り付けると、含まれるタイムゾーンが尊重されます。2024-03-10 08:30 のように時刻はあるがタイムゾーンのない文字列はローカル時刻として、2024-03-10 のような日付だけの文字列は UTC の午前0時として読み取られます(JavaScript と同じ規則)。どちらで解釈したかはツールが表示します。

ISO 8601 / RFC 3339
<code>2023-11-14T22:13:20.000Z</code> — JSON API やデータベースで使われる形式。Z は UTC を意味し、それ以外は <code>+05:30</code> のようなオフセットが続きます。文字列のままで正しく並べ替えられます。
RFC 2822
<code>Tue, 14 Nov 2023 22:13:20 +0000</code> — メールの Date ヘッダーの形式で、RSS でも使われます。
HTTP 日付
<code>Tue, 14 Nov 2023 22:13:20 GMT</code> — RFC 9110 の IMF-fixdate 形式。常に GMT で、Date、Expires、Last-Modified ヘッダーや Cookie で使われます。

タイムゾーンとサマータイム

タイムゾーン一覧には、America/New_York、Europe/Berlin、Asia/Kolkata など、ブラウザが認識するすべての IANA タイムゾーンが、サマータイムの全履歴とともに含まれます。日時をタイムスタンプに変換する際には厄介なケースが2つあります。春には時計が進むため 02:30 のような時刻が存在せず、秋には同じ1時間が2回訪れます。このツールは、存在しない時刻を切り替え直後の時刻として、重複する時刻を1回目として解釈し、該当する場合はその旨を表示します。

タイムスタンプや ISO 8601 文字列は UTC で保存・送信し、ローカルのタイムゾーンへの変換は表示時だけにしましょう。決まった時刻に繰り返すスケジュールには cron 式ジェネレーター をご覧ください。

2038年問題

UNIX時間を符号付き32ビット整数で保存するシステムは 2,147,483,647 までしか数えられず、これは 2038年1月19日 03:14:07 UTC にあたります。その1秒後に値がオーバーフローして負の数になり、1901年12月として読まれてしまいます。最新の64ビットシステムは数十億年先まで安全ですが、組み込み機器、古いファイル形式、32ビット INT で定義されたデータベース列は確認が必要です。上に 2147483647 を貼り付けてその瞬間を確認するか、基数変換ツール でビットパターンを確認してください。

よくある質問

UNIXタイムスタンプを日時に変換するには?
タイムスタンプ → 日時 に貼り付けてください。秒・ミリ秒・マイクロ秒・ナノ秒のどれかを自動で判別し、UTC、ローカル時刻、選んだタイムゾーンでの日時を表示します。
現在のUNIXタイムスタンプを取得するには?
上部のライブ時計に秒とミリ秒で表示されます。コードでは JavaScript なら Math.floor(Date.now() / 1000)、Python なら int(time.time())、PHP なら time()、UNIX シェルなら date +%s です。
タイムスタンプが秒かミリ秒か見分けるには?
桁数を数えます。現在のタイムスタンプは秒なら10桁、ミリ秒なら13桁、マイクロ秒は16桁、ナノ秒は19桁です。このツールは自動で判別し、使った単位を表示します。
UNIXタイムスタンプは UTC ですか?
UNIXタイムスタンプ自体にタイムゾーンはありません。1970年1月1日 UTC 午前0時からの秒数なので、どこでも同じ瞬間を指します。タイムゾーンが関わるのは日時として表示するときだけです。
2038年に何が起こりますか?
2038年1月19日 03:14:07 UTC に、UNIX時間が符号付き32ビット整数の最大値 2,147,483,647 を超えます。時刻を32ビットで保存しているソフトウェアはオーバーフローしますが、64ビットの時刻は影響を受けません。
1970年より前の日付も変換できますか?
はい。エポック以前の日付は負のタイムスタンプになります。-86400 は 1969年12月31日 00:00 UTC です。このツールは負の値を受け付け、1970年より前の日付には負の値を返します。
UNIX時間はうるう秒を数えますか?
いいえ。UNIX時間は1日を常にちょうど 86,400 秒として扱うため、うるう秒はカウントされず、どの日付のタイムスタンプも単純な計算で求められます。
データはサーバーに送信されますか?
いいえ。タイムゾーンのルールを含むすべての変換は、ブラウザ内蔵の Intl 機能を使ってブラウザ内で実行されます。