Unix Timestamp Converter

Unixタイムスタンプ変換ツール

Unixタイムスタンプ(秒またはミリ秒)を人間が読める日付に、また日付をエポックに即座に変換します。ISO 8601、RFC 2822、UTC、ローカル時刻、10以上のタイムゾーンを一画面で表示。

Unixタイムスタンプ(「Unix時間」「エポック時間」とも呼ばれます)は、1970年1月1日(木)00:00:00 UTCから経過した秒数で、うるう秒は無視します。データベース、ログファイル、API、Cookieなどで使われる普遍的な時刻形式です。10桁の数値は秒(2286年に11桁になります)、13桁の数値はミリ秒です。

ほとんどのUnix系ツール(curl、date、syslog、JWTのexp/iatクレーム)は秒を使います。JavaScriptのDate.nowはミリ秒を返します。Java、Kotlin、多くのWeb APIもミリ秒です。現在の数値が約10桁なら秒、13桁ならミリ秒です。iKitは桁数で自動判定しますが、ラジオボタンで強制指定もできます。

現在のUnix時刻(ライブ)
ミリ秒
単位

ISO 8601 (UTC)

UTC時刻

ローカル時刻

ローカル Y-M-D H:M:S

RFC 2822 / HTTP

現在からの相対時間

曜日

主要タイムゾーンでの同時刻

iKit Unixタイムスタンプ変換ツールの特長

ログ、API、データベースのタイムスタンプをデバッグする開発者のために設計。サインアップ不要、アップロード不要、データを第三者に渡しません。

現在エポックをライブ表示

ページ上部で現在のUnix時刻を秒・ミリ秒の両形式で毎秒更新します。どちらの形式もワンクリックでコピー可能です。

秒とミリ秒を自動判定

整数を貼り付けるだけ。10桁は秒、13桁はミリ秒、16桁はマイクロ秒として扱います。必要に応じて単位トグルで手動指定もできます。

主要な出力形式をすべて網羅

ISO 8601、RFC 2822、UTC時刻、ローカル時刻、Y-M-D H:M:Sを一画面に表示。曜日や人間が読める相対表現(「2時間前」など)も提供します。

10以上のタイムゾーンを一目で

UTC、ニューヨーク、ロサンゼルス、ロンドン、パリ、東京、上海、台北、コルカタ、シドニーで同じ瞬間を確認できます。チーム横断のインシデント対応やグローバルAPIに便利です。

双方向変換

「日付 → タイムスタンプ」モードに切り替えて、「Jan 15 2024 10:30 UTC」のように入力したり日時ピッカーで選択して、Unixタイムスタンプを秒・ミリ秒で取得できます。

プライバシー重視の設計

すべてブラウザのタブ内で読み込まれたJavaScriptで動作します。DevTools → Networkで検証可能:fetchもXHRもログ送信もありません。本番環境のタイムスタンプにも安心して使えます。

Unixタイムスタンプ変換の仕組み

Unixタイムスタンプは単なる整数ですが、日付に変換するには意外と多くの細部があります。

  1. 1

    単位を判定する

    Unixタイムスタンプはソースによって秒、ミリ秒、マイクロ秒、ナノ秒のいずれかになります。最初の仕事はどれかを知ることです。iKitは桁数で判定します:約10桁=秒、約13桁=ミリ秒、約16桁=マイクロ秒。単位ラジオボタンで自動判定を上書きできます。

  2. 2

    ミリ秒に揃える

    JavaScriptのDateコンストラクタはミリ秒を受け取るため、秒×1000(またはマイクロ秒/1000)で正規化します。Date内部ではエポックからのミリ秒を64ビット浮動小数点で保持しており、現実的なタイムスタンプには十分な範囲があります。

  3. 3

    人間向けにフォーマットする

    Dateオブジェクトを得たら、いくつかの形式で整形します:ISO 8601 / UTCにはtoISOString、RFC 2822にはtoUTCString、ユーザーのローカルゾーンにはtoString、その他のタイムゾーン表示にはIntl.DateTimeFormatを使います。

  4. 4

    逆方向の変換

    逆方向では、ブラウザのDate.parseがISO 8601や多くの自然な形式を扱います。datetime-local入力はユーザーのローカルタイムゾーンとして解釈されます。getTimeはエポックからのミリ秒を返すので、秒にするには1000で割ります。

Unixタイムスタンプの代表的な用途

エポック変換ツールが活躍する実際のシーン。

JWTのexp / iatクレームを読む

JSON Web Tokenはiat(発行時刻)とexp(有効期限)をUnix秒でエンコードします。数値を貼り付ければ、トークンがまだ有効か、いつ発行されたか、いつ失効するかを瞬時に確認できます。

DBのタイムスタンプ列をデバッグする

Postgresのextract(epoch from now)、MySQLのUNIX_TIMESTAMP、MongoDBの$toDateはいずれもUnixエポックを返します。行のタイムスタンプ値を貼り付ければ、各タイムゾーンでの実際の時刻を確認できます。

異なるシステムのログ行を比較する

アプリログはUTC、syslogはローカル時刻、上流プロバイダのログはPST。各タイムスタンプをここでISO 8601に変換すれば、インシデント追跡時に秒単位で並べて突き合わせできます。

キャッシュTTLやCookie有効期限の生成

ピッカーで未来の日付を選んでUnixタイムスタンプをコピーし、Set-Cookieヘッダ、HTTPのExpiresフィールド、キャッシュTTL設定に貼り付けます。頭の中での計算もタイムゾーンのオフバイワンエラーもありません。

ローカル変換が重要な理由

本番ログ、サポートチケット、監査証跡、テストフィクスチャのタイムスタンプは一見無害でも、ユーザー操作やインフラ事象と紐づいています。他社のサーバに貼り付けると、自分が制御できない記録が残ります。iKitの変換ツールはブラウザのタブ内で読み込み済みのJavaScriptとして動作します。

  • 変換中のネットワークリクエストはゼロ。DevTools → Networkで検証できます。
  • 計算はすべてJavaScriptの素のDate演算。タイムスタンプ自体への計測も行いません。
  • 本番DBのタイムスタンプ、ログ行のオフセット、監査証跡のエントリにも安心。

関連ガイド

iKit ブログの詳しいチュートリアルとツール比較。

よくあるご質問

Unixタイムスタンプとは?

Unixタイムスタンプ(「Unix時間」「エポック時間」とも呼ばれます)は、1970年1月1日(木)00:00:00 UTCから経過した秒数で、うるう秒は無視します。データベース、ログファイル、API、Cookieなどで使われる普遍的な時刻形式です。10桁の数値は秒(2286年に11桁になります)、13桁の数値はミリ秒です。

秒とミリ秒の違いは?

ほとんどのUnix系ツール(curl、date、syslog、JWTのexp/iatクレーム)は秒を使います。JavaScriptのDate.nowはミリ秒を返します。Java、Kotlin、多くのWeb APIもミリ秒です。現在の数値が約10桁なら秒、13桁ならミリ秒です。iKitは桁数で自動判定しますが、ラジオボタンで強制指定もできます。

入力したタイムスタンプはどこかにアップロードされますか?

いいえ。このツール全体がブラウザのタブ内で動作するJavaScriptです。変換は単なるDate演算で、fetchもXHRもbeaconもありません。DevTools → Networkを開いて確認できます。入力中もリクエストは一切発生しません。本番ログ、ステージングDB、サポートチケットのタイムスタンプも安心して貼り付けられます。

別のタイムゾーンのタイムスタンプを変換するには?

Unixタイムスタンプは定義上タイムゾーンを持ちません。エポック(UTC)からの秒数だからです。違いが現れるのは表示時です。「日付 → タイムスタンプ」側のピッカーはブラウザのローカルタイムゾーンを使います。別ゾーンの日付を入力するには、「2024-01-15 10:30:00 +09:00」や「2024-01-15 10:30 UTC」のようにオフセットを明示して自由形式で入力してください。

2038年問題はどうなりますか?

32ビット符号付きUnixタイムスタンプは2038年1月19日にオーバーフローします。iKitはJavaScriptのNumber型(53ビット安全整数範囲)を使用しているため、西暦275000年をはるかに超える日付まで扱えます。Y2038問題は32ビットtime_tで動作するシステムに影響します。最新のOSカーネル、データベース、言語の多くはすでに64ビット時刻に移行済みですが、レガシーな組込みファームウェアでは依然として発生し得ます。