Molossia 共和国に住んでいる場合、Java で次のコードを実行します。
String TimeZoneId=TimeZone.getDefault().getID();
System.out.println(TimeZoneId);
印刷します
アメリカ/レジーナ
試してみTimeZoneInfo.GetSystemTimeZones()
ましたが、戻り値は tzdb id ではないようです。C# に同等のメソッドはありますか?
通常、これは 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);
http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/zone_tzid.html
この以前のスタック オーバーフローの質問.NET TimeZoneInfo from Olson タイム ゾーンを参照してください。
同様の値が返されます
Calendar.GetTimeZone
詳細については、 https : //docs.microsoft.com/en-us/uwp/api/windows.globalization.calendar.gettimezone?view=winrt-20348 を参照してください。