我正在尝试使用 Timezone 类在 C# 中获取一个国家/地区的当前时区。但是,我使用Timezone.CurrentTimeZone.StandardName了,这会返回不正确的时区名称。
这是我到目前为止所尝试的:
TimeZoneInfo.ClearCachedData();
Console.WriteLine("Local machine's time zone is: " + TimeZone.CurrentTimeZone.StandardName + " " + TimeZoneInfo.Local.StandardName + Environment.NewLine);
当我将 Windows 中的设置(目前我使用的是 Windows 10)更改为“阿姆斯特丹、柏林、伯尔尼、罗马、斯德哥尔摩、维也纳”时,时区标准名称应返回“中欧标准时间”(或简称CET) . 返回的时区是“西欧标准时间”(或简称WET)。
我做错了什么还是这是某种错误?
我读过一些关于必须使用称为“ Unicode Common Locale Data Repository ”或简称为“CLDR”的东西的内容。这些天我想使用时区相关代码时是否需要安装软件包?