Unixタイムスタンプ変換ツール
Unixタイムスタンプと日本時間(JST)を相互に変換できます。現在時刻のタイムスタンプもリアルタイムに確認できます。開発・デバッグに便利。
最終更新:2026年9月9日 / 運営:sesebox(運営者情報)
日本時間(JST)はUTC+9で計算しており、サマータイム(夏時間)はありません。「日時→Unix」の入力欄は日本時間として扱われます。
① このツールの使い方
- •1. 変換方向を選ぶ:「Unix → 日時」か「日時 → Unix」かを切り替えます。
- •2. 値を入力する:Unix→日時なら数値と単位(秒/ミリ秒)を、日時→Unixなら日付と時刻を入力します。
- •3. 「現在時刻を使う」ボタンで今の時刻をセットできる:今のタイムスタンプを調べたいだけのときに便利です。
画面上部には現在のUnixタイムスタンプと日本時間(JST)が1秒ごとに更新されて表示されているので、いま現在の値をそのまま確認することもできます。結果欄にはJST・UTC・秒・ミリ秒の4つの表記がまとめて表示されます。
② Unixタイムスタンプとは何か
Unixタイムスタンプは、協定世界時(UTC)の1970年1月1日0時0分0秒を基準(0)として、そこから何秒(またはミリ秒)経過したかを表す1つの数値です。年・月・日・時・分・秒をバラバラに扱わず、1つの整数だけで「いつか」を表現できるため、プログラムやデータベースで広く使われています。
たとえば 0 は1970年1月1日9時0分0秒(日本時間)を表し、日本時間で2024年1月1日0時0分0秒は1704034800という数値になります。
③ 秒とミリ秒の見分け方
現在の日時をUnixタイムスタンプにすると、秒単位なら10桁、ミリ秒単位なら13桁の数値になります。桁数を数えれば、扱っている値がどちらの単位かを判断できます。JavaScriptのDate.now()はミリ秒単位、多くのAPIやデータベースは秒単位で扱うことが多いため、単位を取り違えると日時が大きくずれてしまう点に注意してください。
④ 日本時間(JST)とUTCの関係
| 表記 | 内容 |
|---|---|
| UTC(協定世界時) | 世界標準の時刻基準。Unixタイムスタンプの計算の元になる |
| JST(日本標準時) | UTC + 9時間。日本国内で使われる時刻 |
日本にはサマータイム(夏時間)の制度がないため、年間を通して常にUTC+9時間で計算できます。このツールの「日時→Unix」欄に入力した値は日本時間として扱われ、そこからUnixタイムスタンプ(UTC基準)に変換される仕組みです。海外のサーバーとやり取りする際、相手がUTCで日時を返してくることがあるので、JSTとUTCのどちらかを混同しないように注意してください。
⑤ どんな場面で使うか
- •APIのレスポンスに含まれるcreated_atなどのタイムスタンプが、実際にいつを指しているか確認したいとき
- •データベースに保存されている日時データをデバッグで読み解きたいとき
- •特定の日時のUnixタイムスタンプを、テストデータやAPIのリクエストパラメータとして用意したいとき
Unixタイムスタンプの成り立ちや2038年問題については、Unixタイムスタンプの基礎を解説した記事でも取り上げています。
⑥ よくあるハマりどころ
開発の現場でいちばん多いつまずきは、秒とミリ秒の取り違えです。たとえばJavaScriptのDateオブジェクトはミリ秒単位で日時を扱う一方、多くのバックエンド言語(PythonのtimeモジュールやUnix系コマンドなど)は秒単位が基本です。秒単位の値をミリ秒だと思ってnew Date(value)に渡すと、1970年付近のありえない日付が表示されてしまいます。逆にミリ秒の値を秒だと思って処理すると、実際より遥かに未来の日付として扱われます。このツールで一度変換して桁数を確認するだけでも、こうした事故を防げます。
もう1つのハマりどころはタイムゾーンの取り違えです。データベースやAPIが返すタイムスタンプはUTC基準であることが多いのに、それを日本時間だと思い込んでそのまま表示してしまうと、実際の時刻より9時間ずれて見えてしまいます。海外のチームやサービスとやり取りするときは特に、「このタイムスタンプはUTCなのかJSTなのか」を最初に確認しておくとトラブルを防げます。複数の都市の時刻をまとめて確認したい場合はタイムゾーン変換ツールもあわせてご利用ください。
⑦ 「2038年問題」とは何か
古いシステムの一部では、Unixタイムスタンプを符号付き32ビット整数で保持しており、この型で表現できる最大値は約21億4,748万秒です。この上限に達するのが2038年1月19日3時14分7秒(UTC)で、それを超えると数値が桁あふれ(オーバーフロー)し、内部的には1901年12月のような過去の日付として誤って扱われてしまう可能性があります。これがいわゆる「2038年問題」です。近年のシステムの多くは64ビットでタイムスタンプを扱うように移行が進んでおり、64ビットであれば実質的に問題にならない遠い未来まで表現できます。ただし組み込み機器や古いソフトウェアの一部では今も32ビットのままのものがあり、長期運用が前提のシステムを設計する際には意識しておく価値のあるポイントです。このツールで2038年1月19日以降の日時をUnixタイムスタンプに変換してみると、32ビットの上限を超えた大きな数値になることが確認でき、問題の規模を具体的に体感できます。プログラミングを学ぶ人にとっても、コンピュータが数値をどう内部的に扱っているかを知るうえでの、身近で良い題材になります。桁あふれという現象がなぜ起きるのか、実際の数値で確認しながらじっくりと理解を深められるのも、このツールならではの使い方です。数字だけを見ていると抽象的に感じる概念も、自分の手で実際に変換して確かめてみると、理解の定着がぐっと早まります。
Unixタイムスタンプとは何ですか?
協定世界時(UTC)の1970年1月1日0時0分0秒からの経過秒数(またはミリ秒数)で日時を表す数値です。プログラムやデータベース、APIなどで日時を扱う際によく使われます。
日本標準時(JST)とは何ですか?
日本で使われている標準時で、協定世界時(UTC)より9時間進んでいます(UTC+9)。日本にはサマータイム(夏時間)の制度がないため、年間を通して常にUTC+9です。
秒とミリ秒はどう見分ければいいですか?
現在の日時をUnixタイムスタンプにすると、秒なら10桁、ミリ秒なら13桁の数値になります。「単位」で秒・ミリ秒を切り替えてから変換してください。
「現在時刻を使う」ボタンは何のためにありますか?
クリックすると、現在の日時(Unixタイムスタンプまたは日本時間)をそのまま入力欄にセットできます。現在時刻のタイムスタンプをすぐに調べたいときに便利です。
「日時→Unix」で入力した日時はどのタイムゾーンとして扱われますか?
入力した日時は日本時間(JST、UTC+9)として扱われ、そこからUnixタイムスタンプ(UTC基準)に変換されます。