タイムスタンプコンバーター
Unixタイムスタンプを読みやすい日付に、あるいはその逆に変換します。秒またはミリ秒単位で、UTC、ISO 8601、ローカル時刻の出力を並べて表示します。
- ファイルは端末の外に出ません
- 無料、登録不要
- 透かしなし
- 一度読み込めばオフラインでも動作します
タイムスタンプコンバーターの使い方
- 1
タイムスタンプを貼り付けるか日付を選ぶ
秒とミリ秒は自動的に検出されます。
- 2
各形式を読む
UTC、ISO 8601、ローカル時刻、相対時間がすべて表示されます。
- 3
必要なものをコピー
各形式はクリック1つでコピーできます。
ほぼすべてのシステムがこの特定の方法で時間を数える理由
Unixタイムスタンプは単に1970年1月1日UTC午前0時から経過した秒数です — 数十年前に選ばれた恣意的な基準点で、それ以来コンピュータシステム内で時点を表現するほぼ普遍的なデフォルトになりました。その魅力は、日付と時刻を比較・保存しやすい単一の整数に縮約することです: ある瞬間が別の瞬間より前かどうかを確認することは、カレンダー計算ではなく単純な数値比較であり、保存には日付がどの世紀に落ちようと固定で予測可能な量のスペースしか使いません。だからこそデータベースのタイムスタンプ列からAPIレスポンス、ログファイルのエントリまで、あらゆるものの基盤にあるのです。生の数値そのものを見る人には何の意味も持たないにもかかわらずです — それがこのようなコンバーターが存在する理由の全部です。
一目で秒とミリ秒を見分ける
現在の瞬間を秒単位で表すUnixタイムスタンプは10桁の長さで、同じ瞬間をミリ秒で表現すると13桁になります — ミリ秒精度のための3桁の追加です。この長さの違いが、ある数値がどの単位かを識別する早くて信頼できる方法であり、間違った想定をしたときに起こる最もよくある2つの混乱する失敗モードも説明します。ミリ秒単位の値を秒を期待するコードに渡すと、見た目の日付が約1000倍になり、西暦55000年あたりに落ちます — 劇的で明らかに間違っています。秒単位の値をミリ秒を期待するコードに渡すとその逆になります: 実際の経過時間を約1000で割り、解釈された日付が1970年あたりに落ち、もっともらしい日付に十分近いため、他の場所での本物のバグと時々混同されることがあります。単位のずれではなくです。
UTCが保存に属し、ローカル時刻が表示に属する理由
生のUnixタイムスタンプはタイムゾーン情報を一切持っていません — 単に経過した秒数のカウントであり、地球上のどこでも同じ瞬間には同一です — 読みやすい日付に変換する瞬間こそが、表示目的でタイムゾーンを選ばなければならないところです。UTC(あるいは定義上タイムゾーンに依存しない生のタイムスタンプ自体)を使ってイベントを保存・記録することは、サーバー、データベース、あるいはログを読む人がどのタイムゾーンにいようと、システム内の各記録が正確に同じ瞬間を表すことを意味します。ローカル時刻への変換は、人間が実際にその値を見ているときにのみ行われる表示層の判断であり、だからこそこのツールはその2つを明確に分けます: UTCとISO 8601は保存・比較する価値のある値として、ローカル時刻は読む価値のあるバージョンとしてです。
2038年問題、そしてこのツールが影響を受けない理由
かなりの量の古いインフラ — レガシーなC言語コード、一部の組み込みシステム、特定の古いデータベース列型 — はUnixタイムスタンプを32ビット符号付き整数に格納しており、これには明確な上限があります: 2038年1月19日03:14:07 UTCにオーバーフローして1901年の日付に戻ります。これはY2K問題と同じ根本的な形のバグですが、2桁の年ではなくバイナリ整数の限界に根ざしています。JavaScriptは64ビット浮動小数点値として数値を表現し、これははるかに大きな余裕を持ちこの特定のオーバーフローの影響を受けないため、このツールで計算されたタイムスタンプは影響を受けません — この懸念は、変換されるタイムスタンプをもともと生成したシステムに適用されるのであって、ここで行われる変換自体には適用されません。
よくある質問
私のタイムスタンプは秒単位ですか、ミリ秒単位ですか?
ツールが検出します。現在のUnixタイムスタンプは秒単位で10桁、ミリ秒単位で13桁です。日付が1970年になった場合、ミリ秒を秒として渡しています。西暦55000年あたりになった場合はその逆です。
Unixエポックとは何ですか?
1970年1月1日UTC午前0時、ほぼすべてのシステムがそこから数え始めるゼロ点です。負のタイムスタンプも有効で、それより前の日付を表します — このツールはそれも処理します。
2038年問題とは何ですか?
Unix時間を32ビット符号付き整数に格納するシステムは、2038年1月19日にオーバーフローして1901年に戻ります。JavaScriptは64ビット浮動小数点数を使うため、このツールは影響を受けませんが、レガシーなC言語コードや古いデータベースの列は影響を受けます。
「ローカル時刻」とはどのタイムゾーンですか?
ブラウザから読み取ったお使いの端末のタイムゾーンです。UTC行とISO 8601行はタイムゾーンに依存しません — これが保存・記録すべきものです。ローカル時刻は表示専用です。