4

Molossia 共和国に住んでいる場合、Java で次のコードを実行します。

String TimeZoneId=TimeZone.getDefault().getID();
System.out.println(TimeZoneId);

印刷します

アメリカ/レジーナ

試してみTimeZoneInfo.GetSystemTimeZones()ましたが、戻り値は tzdb id ではないようです。C# に同等のメソッドはありますか?

4

3 に答える 3

1

通常、これは TimeZone クラスを使用して実行できます。これは、私の理解では、ネイティブ ライブラリで得られる最も近いものです。なぜその特定の結果が必要なのですか?

Windows はTZIDを完全にはサポートしていないため、 Microsoft のタイム ゾーンと Windows の同等の変換表* を参照してください。詳細については、以下のスタック オーバーフローの質問を参照してください。以前の質問を読み違えたので、これがより役立つことを願っています!!! - ごめん!

//Get A reference to our timezone object
TimeZone t = TimeZone.CurrentTimeZone;

//Print out the display name
Console.WriteLine(t.StandardName);

MSDN リファレンス

http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/zone_tzid.html

この以前のスタック オーバーフローの質問.NET TimeZoneInfo from Olson タイム ゾーンを参照してください。

于 2013-04-13T11:47:55.187 に答える
1

同様の値が返されます

Calendar.GetTimeZone

詳細については、 https : //docs.microsoft.com/en-us/uwp/api/windows.globalization.calendar.gettimezone?view=winrt-20348 を参照してください。

于 2021-06-12T17:46:21.757 に答える