Skip to content
DocsAll
教程

タイムスタンプ変換:Unix/ISO/ローカル時刻の相互変換を詳しく解説

Timi Tian · 公開日 2026年5月8日 · 更新日 2026年7月12日
タイムスタンプUnix時刻日付変換

タイムスタンプとは

タイムスタンプは、ある瞬間を表す数値です。最もよく使われるのはUnixタイムスタンプ—1970年1月1日00:00:00 UTCからの経過秒数(またはミリ秒数)です。例えば1720780800は2024-07-12 12:00:00 UTCに対応します。タイムスタンプはプログラミング、ログ、データベース、APIの至る所に存在します。

変換が必要な理由

  • ログを読む:ログはタイムスタンプだらけで目で読めないため、可読な時刻に変える
  • APIのデバッグ:APIがタイムスタンプを返すとき、正しいか確認する
  • タイムゾーン越え:UTCのタイムスタンプをローカル時刻に変えて表示する
  • データベース:保存されているのはタイムスタンプだが、表示時には書式化が必要

よくある時刻フォーマット

Unixタイムスタンプ

  • 秒単位:10桁の数字(例:1720780800)
  • ミリ秒単位:13桁の数字(例:1720780800000、JS/Javaでよく使われる)

ISO 8601

2024-07-12T12:00:00Zのような国際標準フォーマットで、APIでよく使われます。末尾のZはUTCを示します。

ローカル時刻

2024-07-12 20:00:00のようにタイムゾーンオフセットを伴い、地域によって異なります。

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

タイムスタンプ変換ツールでワンクリック相互変換:

  1. タイムスタンプツールを開く
  2. タイムスタンプを入力すると可読な時刻を自動表示、または時刻を入力するとタイムスタンプを取得
  3. 秒/ミリ秒の切り替えに対応
  4. 結果をコピー

変換例

タイムスタンプ(秒) UTC時刻 北京時間(UTC+8)
0 1970-01-01 00:00 1970-01-01 08:00
1720780800 2024-07-12 12:00 2024-07-12 20:00

よくある落とし穴

秒とミリ秒

JSのDate.now()はミリ秒(13桁)を返しますが、Pythonのtime.time()は秒(10桁)を返します。混用すると1000倍の差が出るため、変換前に単位を確認してください。

タイムゾーン

同じタイムスタンプでもタイムゾーンによって表示が異なります。北京時間はUTCより8時間早く、1720780800はUTCでは正午12時、北京では午後8時です。バックエンドはUTCで保存し、フロントエンドはユーザーのタイムゾーンに合わせて表示するのが一般的です。

2038年問題

32ビットのUnixタイムスタンプは2038-01-19にオーバーフローします。現代のシステムはほとんど64ビットであり影響を受けませんが、古い組み込みシステムでは注意が必要です。

負のタイムスタンプ

1970年より前の時刻は負の数で表されます。対応していないツールもあるため、1969年以前の日付を変換するときは注意してください。

実用のヒント

  • バックエンドはUTCタイムスタンプで一元保存し、フロントエンドは必要に応じてローカルタイムゾーンに変換する
  • ログ分析時にはツールでタイムスタンプをまとめて可読な時刻に変換すると、暗算より百倍速い
  • APIのデバッグ時には、返されるのが秒かミリ秒かを先に確認する

タイムスタンプ変換は開発者の日常で頻度の高い作業です。ツールをブックマークしておけば、必要なときにすぐ開けます。

T
Timi Tian 创始人 / 全栈工程师

DocsAll 创始人,10 年全栈开发经验,专注浏览器端文档处理技术与隐私保护架构。前新加坡科技公司技术负责人。