はじめまして、初投稿させていただきます。
あるタイムゾーンの時刻データを別のタイムゾーンの時刻へ変換したいのですが、どうやればよいのかがわかりません。
(たとえば、ニューヨーク時間等での時刻データをUTC時間に変換したい)
要は、変換元のタイムゾーンと変換先のタイムゾーンを指定でき、指定した時間データを変換させたいんです。
ローカルタイムをUTCに変換することはできたのですが。。
すみませんが、ご教授のほど、よろしくお願いします。
指定タイムゾーン時刻データからUTC時刻データへの変換方法
Re: 指定タイムゾーン時刻データからUTC時刻データへの変換方法
DSTを考えない場合,タイムゾーンがUTC+Nの場合,
・ローカル→UTC : N時間引く
・UTC→ローカル : N時間足す
# UTC-NはUTC+(-N)と考える
になります。DSTはNに対する修正と見なす方が簡単でしょう。
例えば,ESTは
・DST外:UTC-5なので,ローカル→UTCは5時間足し,UTC→ローカルは5時間引く
・DST内(EDT):UTC-4なので,ローカル→UTCは4時間足し,UTC→ローカルは4時間引く
となります。
これを,変換元ローカル→UTC→変換先ローカルという順序で時刻を変換すれば,タイムゾーンの変換ができます。
・ローカル→UTC : N時間引く
・UTC→ローカル : N時間足す
# UTC-NはUTC+(-N)と考える
になります。DSTはNに対する修正と見なす方が簡単でしょう。
例えば,ESTは
・DST外:UTC-5なので,ローカル→UTCは5時間足し,UTC→ローカルは5時間引く
・DST内(EDT):UTC-4なので,ローカル→UTCは4時間足し,UTC→ローカルは4時間引く
となります。
これを,変換元ローカル→UTC→変換先ローカルという順序で時刻を変換すれば,タイムゾーンの変換ができます。
-
困ったくん
Re: 指定タイムゾーン時刻データからUTC時刻データへの変換方法
ご回答、ありがとうございました。
やはり、+-し算出するしかないのですね。夏時間を考慮するのが面倒だったため
何かクラス等があればと思い質問させていただきました。
ご回答の内容を参考にさせていただきます。
やはり、+-し算出するしかないのですね。夏時間を考慮するのが面倒だったため
何かクラス等があればと思い質問させていただきました。
ご回答の内容を参考にさせていただきます。
-
hjkl
Re: 指定タイムゾーン時刻データからUTC時刻データへの変換方法
boost.date_timeとかでそういった処理ができるんですかね?
日時とかには疎いんでまちがってたらすみません。
日時とかには疎いんでまちがってたらすみません。