時差変換

日付と時刻をあるタイムゾーンから別のタイムゾーンへ変換します。その日に有効だったUTCオフセットとサマータイムを反映します。

24時間表記(HH:MM形式)。

日付、時刻、その時刻が属するタイムゾーンを入力すると、同じ瞬間が別の場所の時計でどう表示されるかがわかります。オフセットは今日のルールではなく、その日付に有効だったルールから求めます。

仕組み

入力した日付と時刻は変換元のタイムゾーンでの時計の表示として読み取られ、それによって1つの瞬間が決まります。その瞬間を変換先のタイムゾーンで表します。2つのオフセットはいずれもその日付について調べます。1月には5時間差でも7月には6時間差になるタイムゾーンもあるからです。

タイムゾーンのデータは、サーバーに付属するIANAタイムゾーンデータベースから取得しています。国が時刻を変更したりサマータイムを廃止したりしたときに変わるのはそのデータベースで、このツールの中にはルールが一切書かれていません。

時計を進める日には1時間が飛ばされ、その間の時刻は存在しません。そうした時刻を指定された場合も、このツールは入力が相当する瞬間を表示し、入力した時刻が存在しなかったことをはっきり伝えます。

例

ケース 入力 結果
ヨーロッパで時計が進む夜 2026-03-29 02:30 UTCをEurope/Parisへ 04:30、すでに夏時間

よくある質問

2つのタイムゾーンの時差が常に同じではないのはなぜですか?

サマータイムの開始日と終了日は場所によって異なり、実施しない地域もあるからです。パリは1年の大半でニューヨークより6時間進んでいますが、春と秋の、どちらか一方だけが時刻を切り替えた数週間は5時間差になります。そのため時差は入力された日付について計算します。

入力した時刻が存在しなかったとはどういう意味ですか?

春の切り替えの朝、時計は一気に進みます。中央ヨーロッパでは02:00から直接03:00になります。その間の時刻は、そのタイムゾーンの時計には一度も表示されません。このツールは、入力した時刻を黙ってずらすのではなく、そのことをお知らせします。

秋に2回ある時刻はどうなりますか?

その時刻は存在しないのではなく、曖昧なのです。02:30は切り替えの前に1回、後にもう1回訪れます。ここでは一般的な慣行に従い、1回目を使います。

CETではなくEurope/Parisのような識別子を使うのはなぜですか?

略称は曖昧で(CSTを名乗るタイムゾーンは少なくとも3つあります)、サマータイムのルールも含みません。地域の識別子はそれを含んでいるので、データベースはこれをキーにしています。

知っておきたいこと

  • UTCオフセットとサマータイムのルールは、サーバーのIANAタイムゾーンデータベースから取得し、入力された日付に適用しています。
  • 過去の日付にはその時期について記録されたルールを使います。遠い過去については、そのルール自体がデータベースの管理者による近似です。

出典

日付と時間のすべてのツール