.net CF 3.5で特定のタイムゾーンを取得しますか?
-
19-08-2019 - |
質問
PocketPCに世界時計を持ちたいのですが。現地時間を取得しても問題はなく、UTC時間を取得しても問題はありません。しかし、特定のタイムゾーンを取得できないようです。ニューヨークの現在のタイムゾーンが必要で、夏時間かどうかわからない(たとえば、東部標準時(GMT-5)か東部夏時間(GMT-4)かわからない)と言います。
残念ながら、TimeZoneInfoはCompact Frameworkに存在しないようです。適切な変換を行うために、今後10年間の希望するタイムゾーンの夏時間の変更を手動でハードコーディングする以外に方法はないのでしょうか。 ...
編集:TimeZoneは存在しますが、抽象クラスであるため、自分で実装する必要があります。エラーが発生しやすく、DSTターンアラウンドの日付に魔法が必要なので、回避したいです。
解決
OpenNetCFライブラリは TimeZones をサポートします。
編集:Compact Frameworkは TimeZone をサポートしていますa>しかし、マイケルが指摘したように、それは抽象クラスです!
他のヒント
Webサービスを使用して最新のタイムゾーン情報をダウンロードする方法はどうですか?
http://www.michaelbrumm.com/simpletimezone.html をご覧ください。 。 (ローカルタイムゾーンだけでなく)レジストリからタイムゾーン情報を取得する方法もあります。 http://msdn.microsoft.com/en-us/library/ms725481(VS.85).aspx
更新:これが役立つ場合があります: http://social.msdn.microsoft.com/forums/en-US/windowsgeneraldevelopmentissues/thread/feed3c46-18ea-4d5a-b5cf-7d85823fae01/
コンパクトデバイスに同じ情報があるかどうかはわかりませんが、PCからタイムゾーンを抽出して、コンパクトデバイスの構造体またはファイルに保存できます。ただし、これらは変更される傾向があるため、たまに更新する必要があります。