2

いくつかのstring Languageプロパティ データを含むサード パーティからのデータがあります。取得されたサンプル データは次のようになります。

「オーストラリア/メルボルン」

プロパティのデータ型が何に基づいているかを調べたところ、それはZone Info (tz database / Olson database)です。あれは何だよ?私はググって、ここに情報があります....

多くの主要なプラットフォームで使用されているようですが、.NET では使用されていません。

車輪を再発明する前に (または、要点を言えば、そのコードプレックス サイトのコードを更新して db リストを dll に埋め込む)、これは .NET 基本クラス ライブラリに既に存在しますか?

4

3 に答える 3

5

それは Zone Info (tz データベース / Olson データベース) です。あれは何だよ?

これは、タイム ゾーンを表す移植可能なほぼ標準的な方法です。.NET が適切にサポートしていないのは残念です、IMO。

.NET 3.5 を使用していますか? もしそうなら、TimeZoneInfoクラスは私たちが得た最高のサポートですが、Olson 名から Windows 名への変換は難しいかもしれません。理想的には、Olson ID から Windows が使用する ID への変換が必要です...ただし、利用可能な ID があるかどうかはわかりません。

編集:少し掘り下げた後、いくつかのリンク:

これらが最新に保たれる頻度はわかりませんが、最善の策かもしれません。

于 2009-03-19T11:47:29.653 に答える
2

Code Projectには、必要なことを正確に実行する小さな.Netライブラリがあります。

http://www.codeproject.com/KB/locale/zoneinfo_dotnet_api.aspx

http://zoneinfo.codeplex.com/

すべてのタイムゾーンがZoneInfo/Olsenデータベース形式であるため、GoogleAPIと通信するいくつかのプロジェクトでこれを使用します。

また、設定に関するブログ投稿を作成しました:http ://www.diaryofaninja.com/blog/2011/05/27/how-to-use-zoneinfotz-time-zones-in-net-applications

于 2011-05-28T02:22:41.317 に答える
0

GMTに変換しますか?+x 時間または -x 時間を検索し、保存した日付/時刻からオフセットを減算します。例えば。あなたの例では、メルボルンは+10 GMTであるため、10を引きます??

于 2009-03-19T11:34:41.290 に答える