Unixタイムスタンプとは
Unixタイムスタンプは、Unixエポックと呼ばれる1970年1月1日00:00:00(UTC)からの経過秒数です。同じ瞬間なら世界中どこでも同じ数になるので、API、ログ、データベースで使われます。たとえば1700000000は、2023年11月14日22:13:20(UTC)、日本時間では11月15日7:13:20です。
秒かミリ秒か
秒のタイムスタンプは現在10桁です。JavaScript、Java、多くのAPIはミリ秒を使い、13桁になります。1970年の日付や何千年も先の日付が出たら、単位が違っている可能性が高いです。
オンラインで変換する
Unixタイムスタンプ変換に貼り付けると、秒かミリ秒かを判別して、UTCとお住まいのタイムゾーンの日時で表示します。
コードや表計算で
- JavaScript:
new Date(1700000000 * 1000) - Python:
datetime.fromtimestamp(1700000000, tz=timezone.utc) - ExcelやGoogleスプレッドシート:
=A1/86400+DATE(1970,1,1)のあと、セルを日付の書式にします。結果はUTCなので、日本時間にするには9時間(+9/24)を足します。 - MacやLinuxのターミナルで現在時刻:
date +%s
2038年問題
タイムスタンプを符号付き32ビット整数で保存しているシステムは、2038年1月19日03:14:07(UTC)にあふれてしまいます。最近のシステムは64ビットを使っていて、何十億年分も余裕があります。