必要なツールを、すぐ使えるように

ISO 8601 日本時間 変換ツール

ISO 8601の時刻の末尾にあるZはUTCで、日本標準時はUTCより9時間進んでいます。2026-09-26T15:30:45Zは、日本時間で9月27日午前0時30分45秒です。日付・時刻の文字列を貼り付けると形式を読み取って部分ごとに分け、日本時間とUTCの表記10種類に書き直します。

最終更新 2026-10-20計算はブラウザ内だけで処理

ISO 8601・RFC 3339・HTTP日付・ログの時刻など、日付と時刻が書かれた文字列を貼り付けてください。

時間帯がない値は

日本時間

—

日付が変わる位置

日付を読み取ると、その日1日のUTC範囲がここに表示されます。

同じ瞬間を表すさまざまな書き方

  • 日本時間 ISO 8601 (+09:00)—
  • UTC ISO 8601 (Z)—
  • UTC 秒まで (小数なし)—
  • 基本形式 (AWS署名・ファイル名)—
  • 日本時間 DB値 (時間帯なし)—
  • メール日付 (RFC 2822)—
  • HTTP日付 (GMT)—
  • UNIX秒—
  • UNIXミリ秒—
  • 日本語で書くと—
複数行をまとめて変換 (ログを貼り付け)

ログ・JSON・メールヘッダーを貼り付けると、日時が書かれた箇所だけを探して日本時間に変換します。時間帯がない値は、上の「時間帯がない値は」の設定に従います。

変換方法
変換後のテキスト
貼り付けたテキストがありません。

最終更新 2026-10-20入力値は保存しません

ROBERINの基準必要なツールを、
すぐ使えるように。
  • ひと目で分かる画面入力と結果の位置をはっきり分けます。
  • 結果が先主要な結果を先に示し、過程は必要なときだけ。
  • 求めない登録や不要な入力なしですぐ使えます。

2026-09-26T15:30:45Zは日本時間で9月27日午前0時30分45秒です

ISO 8601の時刻の末尾にあるZはUTC(協定世界時)を表し、日本標準時(JST)はUTCより9時間進んでいます。そのため、Z付きの時刻に9時間を足すと日本時間になり、UTCの15:00から24:00までの時刻は、日本ではすでに翌日です。反対に、末尾が+09:00の値は最初から日本時間なので、9時間を足してはいけません。

上の変換ツールの入力欄に日付・時刻の文字列を貼り付けると、形式を自動で判別し、日付・時刻・小数秒・時間帯のどこがどの部分かを色分けして示します。答えの下にある帯は、UTCの1日と日本の1日を同じ時間軸に重ねて描き、日付が変わる位置と、日本の1日がUTCのいつからいつまでにあたるかを示します。ログを複数行貼り付ければ、日時の書かれた箇所だけをまとめて日本時間に変えることもできます。

UTCの時刻を日本時間に直す必要が出る場面

サーバーやプログラムは、地域によって値が変わらないUTCや、オフセット付きのISO 8601で時刻をやり取りすることが多くあります。人がその値を読んで、日本で何時だったかを判断するときに、この変換が必要になります。

  • APIやJSONのレスポンスを確認するとき: "createdAt": "2026-09-26T15:30:45.123Z"のようにZで終わる値はUTCです。問い合わせにある「昨夜0時30分の注文」と同じものかどうかを照合するには、日本時間に直す必要があります。
  • サーバーログを読むとき: サーバーの時計をUTCに合わせていると、ログも[26/Sep/2026:15:30:45 +0000]のようにUTCで記録されます。障害の発生時刻を日本時間にしておくと、ほかの記録との前後関係を合わせられます。
  • メールやHTTPのヘッダーを見るとき: Date: Sat, 26 Sep 2026 15:30:45 GMTのように曜日と英語の月名で書かれた値も、同じ瞬間を指します。
  • データベースから日本の1日分を探すとき: UTCで保存された列から「9月27日の注文」を探すには、UTCの9月26日15時以上、9月27日15時未満で絞り込む必要があります。上の帯の下の行が、この範囲をSQL条件としてコピーできます。
  • 設定値をUTCで渡すとき: 予約配信や有効期限をISO 8601のUTCで受け取るサービスに日本時間の予定を入れる場合や、AWSの署名のように20260926T153045Zという基本形式を作る場合です。

計算方法: 書かれたオフセットを引いてUTCに戻し、9時間を足します

日本時間 = 書かれた時刻 − 書かれたオフセット + 9時間

  1. 末尾の時間帯表記を探します: Z(または+00:00)はUTC、+05:30はUTCより5時間30分進んだ地域、-04:00は4時間遅れた地域の時刻です。何も付いていなければ、文字だけではどの地域の時刻か分かりません。
  2. オフセットを引いてUTCに戻します: 2026-09-26T08:00:00+05:30は、8時から5時間30分を引いてUTCの2時30分です。オフセットがマイナスなら、逆に足します。
  3. UTCに9時間を足します: UTCの2時30分は、日本の11時30分です。1950年の夏時間のように、日本のオフセットが+9ではなかった時期は、そのときの値を使います(日本標準時の移り変わり)。
  4. 24時を超えたら日付を1日進めます: UTC 15時30分 + 9時間 = 24時30分なので、翌日の0時30分です。逆に日本時間から9時間を引いて0時を下回れば、前日になります。

小数秒は、時間帯を変えても変わりません。オフセットは時・分の単位なので、秒より下の桁は動かないためです。この変換ツールも、.123や.123456789のように入力された桁をそのまま書き写します。

ISO 8601の文字列を部分ごとに読む

2026-09-26T15:30:45.123Zを部分ごとに分けた意味
部分例意味
日付2026-09-26年-月-日です。月と日は常に2桁で書きます。
区切りT日付と時刻の間の区切り文字です。RFC 3339は、読みやすさのために空白を使うことも認めています。
時刻15:30:4524時間制の時:分:秒です。
小数秒.123秒より下の桁です。3桁ならミリ秒、6桁ならマイクロ秒、9桁ならナノ秒まで書いた値です。
時間帯ZUTCを表します。+00:00と同じ瞬間です。
時間帯+09:00UTCより9時間進んだ地域の時刻、つまり日本時間です。
時間帯-00:00UTCの時刻は正しいものの、現地の時差は分からないという表示です。

If the time in UTC is known, but the offset to local time is unknown, this can be represented with an offset of "-00:00".RFC 3339 4.3 Unknown Local Offset Convention。同じ文書の5.6は、TとZを小文字のt・zで書いてもよいと補足しています。

この変換ツールが読める形式

入力欄には、次の形式をそのまま貼り付けられます。前後の空白や全角の数字は自動で整えます。

読める形式と、その形式をよく見る場所
形式例よく見る場所
ISO 8601 拡張形式 (RFC 3339)2026-09-26T15:30:45.123ZAPI・JSONのレスポンス、JavaScriptのtoISOString()
空白区切り・短いオフセット2026-09-26 15:30:45.123+00PostgreSQLの既定(ISO)出力
時間帯のない値2026-09-27 00:30:45DBのDATETIME列、Excelから書き出した表
ISO 8601 基本形式20260926T153045ZAWSのリクエスト署名の時刻、ファイル名
HTTP日付Sat, 26 Sep 2026 15:30:45 GMTHTTPのDate・Last-Modifiedヘッダー
RFC 2822 メール日付Sat, 26 Sep 2026 15:30:45 +0000メール原文のDateヘッダー
JavaScript Date文字列Sat Sep 26 2026 15:30:45 GMT+0900 (日本標準時)ブラウザーのコンソールでのString(new Date())の出力
dateコマンドSat Sep 26 15:30:45 JST 2026macOSやCロケールでのdateの出力
Webサーバーログ26/Sep/2026:15:30:45 +0000nginx・Apacheのアクセスログ(Common Log Format)
年月日の数字表記2026/09/26(土) 15:30:45 JST2026/09/26形式のログ
日本語の日付2026年9月27日 午前0時30分文書やチャットに書かれた時刻
数字のみ1790436645UNIX時間(桁数で秒かミリ秒かを判別)

数字だけを扱うことが多いなら、UNIXタイムスタンプ変換ツールのほうが、単位の判別や32ビットの範囲まで詳しく示します。

変換の例

入力値と日本時間、UTC表記
入力日本時間UTC日付
2026-09-26T15:30:45.123Z2026-09-27 00:30:45.1232026-09-26T15:30:45.123Z翌日
2026-09-26T03:00:00Z2026-09-26 12:00:002026-09-26T03:00:00Z同じ日
2026-09-26T08:00:00+05:302026-09-26 11:30:002026-09-26T02:30:00Z同じ日
2026-09-26T20:00:00-04:002026-09-27 09:00:002026-09-27T00:00:00Z翌日
2026-09-27T00:30:45+09:002026-09-27 00:30:452026-09-26T15:30:45Zすでに日本時間
2026-01-01 00:15 (日本時間として読む)2026-01-01 00:15:002025-12-31T15:15:00ZUTCは前日
Sat, 26 Sep 2026 15:30:45 GMT2026-09-27 00:30:452026-09-26T15:30:45Z翌日
2026-12-31T15:00:00Z2027-01-01 00:00:002026-12-31T15:00:00Z日本は元日
1950-07-01T00:00:00Z1950-07-01 10:00:001950-07-01T00:00:00Z夏時間(+10:00)

UTCの15時から、日本は翌日です

日本時間はUTCより9時間進んでいるため、UTCの1日の終わりの9時間(15:00〜23:59)は、日本の日付では翌日になります。言い換えると、日本の1日は、UTCでは前日の15時から当日の15時前までです。

UTCの時刻と、同じ瞬間の日本時間(現在の+09:00で計算)
UTC00:0003:0006:0009:0012:0015:0018:0021:00
日本09:0012:0015:0018:0021:00翌日 00:00翌日 03:00翌日 06:00

このため、データをUTCの日付でまとめて集計すると、日本の午前9時より前の記録が前日に入ってしまいます。日本の日付で集計するには、次のようにUTCの範囲を、終わりが開いた区間で指定します。

-- 日本時間 2026-09-27 の1日分
WHERE created_at >= '2026-09-26T15:00:00Z'
  AND created_at <  '2026-09-27T15:00:00Z'

終わりを23:59:59で閉じると、その後の小数秒(23:59:59.5など)が漏れるため、「翌日の0時未満」と書くほうが安全です。

コードで日本時間に変換する

プログラムの中では、9時間を自分で足すより、時間帯の名前(Asia/Tokyo)を渡すほうが、過去の夏時間まで正しく処理されます。

ISO 8601のUTC値を東京の時刻に変換する例
言語コード注意点
JavaScriptnew Date('2026-09-26T15:30:45Z').toLocaleString('ja-JP', { timeZone: 'Asia/Tokyo' })オフセットのない'2026-09-26T15:30'は端末の時刻として、'2026-09-26'のように日付だけの場合はUTCとして読まれます。
Python 3.11以上datetime.fromisoformat('2026-09-26T15:30:45Z').astimezone(ZoneInfo('Asia/Tokyo'))3.10以下のfromisoformat()は、末尾のZを読めません。
SQLでの絞り込みcreated_at >= '2026-09-26T15:00:00Z' AND created_at < '2026-09-27T15:00:00Z'列が時間帯のない型なら、保存時にどの時間帯で書いたかを先に確かめます。

When the UTC offset representation is absent, date-only forms are interpreted as a UTC time and date-time forms are interpreted as a local time.ECMA-262 21.4.1.32 Date Time String Format。同じ文字列でも、時刻が付いているかどうかでJavaScriptが読む時間帯が変わります。

日本標準時が常に+09:00だったわけではありません

現在の日本標準時はUTC+09:00ですが、IANA時間帯データベース(Asia/Tokyo)には、標準時の始まりと、夏時間を実施した期間が記録されています。この変換ツールは、その記録に従い、そのときのオフセットで計算します。

IANA時間帯データベースに記録された東京のUTCオフセットの変化
期間(日本時間)オフセット内容
1888-01-01より前+09:18:59東京の地方平均時
1888-01-01 〜 現在+09:00日本標準時。1948〜1951年の夏時間を除きます
1948-05-02 01:00 〜 1948-09-12 01:00+10:00夏時間(0時を1時に進め、9月に1時を0時に戻す)
1949-04-03 01:00 〜 1949-09-11 01:00+10:00夏時間
1950-05-07 01:00 〜 1950-09-10 01:00+10:00夏時間
1951-05-06 01:00 〜 1951-09-09 01:00+10:00夏時間(IANAに記録された最後の夏時間)

IANAのデータでは、夏時間は1951年が最後で、それ以降のオフセットの変化はありません。そのため、1948-05-02 00:30は東京に存在しない時刻、1948-09-12 00:30は2回ある時刻です。時間帯のない値をこのような時刻で入力すると、変換ツールはどちらの側で読んだかを別に表示します。1888年より前のようにオフセットに秒が付く時期は、RFC 3339・RFC 2822の表記が時差を分までしか書けないため、その2行を空欄にします。

よくある間違い

  • +09:00の値にさらに9時間を足す: 2026-09-27T00:30:45+09:00は、すでに日本時間です。9時間を足すと、まったく別の午前9時30分になります。
  • 時間帯のない値をUTCとみなす: 2026-09-27 00:30:45には時間帯の情報がありません。保存したプログラムが日本時間で書いたのかUTCで書いたのかを確かめてから、上の「時間帯がない値は」の設定を選んでください。
  • 日付だけを比べる: UTCの9月26日と日本の9月26日は、9時間ずれた別の1日です。日付ごとの集計は、どの時間帯を基準にするかを先に決める必要があります。
  • Zと-00:00を区別しない: どちらもUTCの時刻ですが、-00:00には現地の時差が分からないという意味が加わります。メールヘッダーの-0000も同じ意味です(RFC 5322 3.3)。
  • CSTやISTのような略語を信じる: CSTは米国中部標準時(-06:00)と中国標準時(+08:00)のどちらも指し、ISTはインド・アイルランド・イスラエルが使います。この変換ツールは、RFC 5322が値を定めた米国の略語だけをその値で読み、複数の国が使う略語は数字のオフセットで書き直すよう案内します。

制限

  • 時間帯の計算は、使っているブラウザに入っているIANA時間帯データに従います。データの版によって、ごく古い時期や最近変わった地域のオフセットが異なる場合があります。
  • 2026-W39-6のような週番号の日付、2026-269のような通算日の日付、09/26/2026のように月と日の順序が国ごとに異なる表記は読みません。
  • 23:59:60のようなうるう秒はUNIX時間に存在しないため、次の秒の0秒として計算します。
  • asctime形式(Sat Sep 26 15:30:45 2026)は、HTTPの規格ではUTCとみなされますが、プログラムによっては現地時刻で出力することもあるため、「時間帯がない値は」の設定に従います。
  • 小数秒はナノ秒(9桁)まで受け付けます。時間帯の略語は、UTC・GMT・KST・JST・WIB・WITA・WIT・CET・CESTと、RFC 5322の米国の略語だけを読みます。

出典

出典の確認日は2026-10-20です。時間帯データは年に何度も改訂され、画面の時刻は使っているブラウザに入っている版に従います。

よくある質問

ISO日付の末尾のZは何を意味しますか?

Zは、その時刻がUTC(協定世界時)であることを示す印です。2026-09-26T15:30:45Zと2026-09-26T15:30:45+00:00は同じ瞬間です。RFC 3339では、Zを小文字のzで書くことも認めています。

UTCを日本時間にするには何時間足しますか?

9時間を足します。UTCの15時から24時前までは、9時間を足すと24時を超えるため、日本では翌日になります。ただし、1948〜1951年の夏時間のように日本のオフセットが+10:00だった期間は10時間を足す必要があり、変換ツールはIANA時間帯データでこうした期間を反映します。

2026-09-26T15:30:45Zは日本では何時ですか?

日本時間の2026年9月27日(日)午前0時30分45秒です。UTCでは9月26日(土)ですが、9時間を足すと0時を超えるため、日本の日付は1日後になります。RFC 3339では2026-09-27T00:30:45+09:00です。

末尾が+09:00のとき、さらに9時間を足しますか?

足しません。+09:00は「UTCより9時間進んだ地域の時刻」という意味なので、その値自体がすでに日本時間です。2026-09-27T00:30:45+09:00を入力すると、変換ツールはUTC表記の2026-09-26T15:30:45Zを示し、「すでに日本時間」の印を付けます。

日本時間の2026年1月1日0時15分は、UTCのISO表記では何ですか?

2025-12-31T15:15:00Zです。日本時間から9時間を引くと、UTCではまだ2025年12月31日15時15分です。日本時間をオフセット付きでそのまま書くと2026-01-01T00:15:00+09:00になります。

時間帯のない2026-09-27 00:30:45も変換できますか?

変換できます。文字だけではどの時間帯か分からないため、「時間帯がない値は」の設定で、日本時間として読むかUTCとして読むかを選びます。既定は日本時間で、このときの答えはUTC表記の2026-09-26T15:30:45Zです。

UTCで保存されたデータから、日本の1日分を探すにはどうしますか?

日本の1日は、UTCでは前日の15時から当日の15時前までです。日本の9月27日なら、2026-09-26T15:00:00Z以上、2026-09-27T15:00:00Z未満で絞り込みます。変換ツールの帯の下にある「SQL条件をコピー」で、この範囲をそのままコピーできます。

ログの複数行の時刻をまとめて変換できますか?

「複数行をまとめて変換」を開いてログを貼り付けると、ISO 8601・HTTP日付・Webサーバーログ形式など、日時が書かれた箇所だけを探して日本時間に変えます。その場で置き換えることも、元の値の後ろに日本時間を追記することもでき、日付が正しくない値はそのまま残します。

今のUTCと日本時間を確認できますか?

入力欄の隣の「今」を押すと、現在の時刻がUTC形式で入り、1秒ごとに更新されます。答えには日本時間、下の帯には現在の瞬間が表示されます。もう一度押すか、入力欄に文字を入力すると、追従は止まります。

過去の日本の夏時間の日付も計算できますか?

計算できます。ブラウザのIANA時間帯データに従い、1948〜1951年の夏時間と、1888年に始まった日本標準時の+09:00を反映します。たとえば1950-07-01T00:00:00Zは夏時間にあたり、日本時間では午前10時です。