本文へ移動

Unix時間変換

Unix時間は1970-01-01 00:00:00 UTCから数えた秒またはミリ秒です。どちらか一方を入力すると、もう一方がすぐに表示されます。

Unix ↔ UTC

Unix時間とUTCを変換

入力データはこのブラウザー内に留まります。

秒またはミリ秒を選択します。秒は小数3桁まで、ミリ秒は整数で入力してください。

実在するUTC日付と24時間表記の時刻を入力します。ミリ秒は省略できます。

使い方

  1. 左側にUnixタイムスタンプを入力すると、対応するUTC日時が右側に表示されます。
  2. 秒 (s) またはミリ秒 (ms) を明示的に選びます。単位を変えると反対側が再計算されます。
  3. 右側にYYYY-MM-DD HH:mm:ss.SSS UTC形式で入力すると、左側にUnixタイムスタンプが表示されます。
  4. 最後に編集した欄が変換元です。存在しない日付や不正な形式はエラーになります。

Unix時間とは

Unix時間は1970-01-01 00:00:00 UTCからの経過時間です。0はその瞬間、正は後、負は前を表します。ローカル時間帯や夏時間は適用しません。

1秒は正確に1,000ミリ秒です。内部では整数ミリ秒を保つため、秒は小数3桁まで、ミリ秒は整数です。一般の小数2桁丸めは行いません。

UTC日時とタイムスタンプは同じ瞬間の別表現です。うるう年と各月の日数を確認してから計算します。

対応するすべての変換方向

対応範囲は次の4方向で、日付と時刻はすべて協定世界時 (UTC) です。

変換方向方法正確な例
Unixタイムスタンプ秒 (s) からUTC日付・時刻秒を1,000倍してミリ秒にし、1970-01-01 00:00:00.000 UTCに加えます。0 s = 1970-01-01 00:00:00.000 UTC.
Unixタイムスタンプミリ秒 (ms) からUTC日付・時刻整数ミリ秒をUnix epochへ直接加えます。1709251199123 ms = 2024-02-29 23:59:59.123 UTC.
UTC日付・時刻からUnixタイムスタンプ秒 (s)Unix epochを引き、正確なミリ秒差を1,000で割ります。小数3桁まで保持します。1969-12-31 23:59:59.999 UTC = -0.001 s.
UTC日付・時刻からUnixタイムスタンプミリ秒 (ms)Unix epochを引き、符号付きの差を整数ミリ秒で表します。2000-02-29 23:59:59.007 UTC = 951868799007 ms.

確認例

0 sと0 msはいずれも1970-01-01 00:00:00.000 UTCです。0以外では選んだ単位により意味が変わります。

2000-02-29 23:59:59.007 UTCは951868799007 msまたは951868799.007 sです。どちらから戻しても.007を含む同じ瞬間になります。

入力規則と制限

よくある質問

秒とミリ秒はどう見分けますか?

取得元の仕様を確認してください。10桁・13桁はよくある慣例ですが確実な規則ではないため、単位を必ず選びます。

秒が小数3桁までなのはなぜですか?

ミリ秒を表すためです。1.25 sは正確に1250 msです。それ以上はこのツールが扱わないサブミリ秒精度になります。

負のタイムスタンプは有効ですか?

はい。-1 sは1969-12-31 23:59:59.000 UTC、-0.001 sはepochの1ミリ秒前です。

端末の時間帯を使いますか?

使いません。カレンダー入力と出力は明示的にUTCで、地域オフセットを加えません。

日付が拒否された理由は?

実際の暦を検証します。2023-02-29や4月31日は存在せず、2024-02-29は有効です。