Windows では、 を呼び出すだけで簡単に UTC 変換を行うことができますGetTimeZoneInformation
。結果として返される構造体には、標準時用と DST 用の 2 つの異なるバイアス値と、BiasCode
現在どちらを使用しているかを表す があります。そして、今の瞬間だけを気にするのであれば、それは問題ありません。
しかし、今後のイベントに関するデータを取得するためにユーザーが呼び出す API があります。データはローカル時間でデータベースに保存され、ユーザーは UTC でそれを望んでいるので、変換を実行するとすべて問題ありません...数週間以内に時間の変更が行われることを除いて. そして、今日の偏りで時間の変化の反対側のイベントを報告すると、それらは 1 時間ずれます。
のように動作するものGetTimeZoneInformation
はBiasCode
ありますか? (もちろん、ルールは年ごとに変わることは承知しています。私は、数週間先の未来を見据えたものを探しているわけではありません。)