我需要显示一个带有当前时区缩写的标签.我的电脑的时区目前设定为"(GMT)格林威治标准时间:都柏林,爱丁堡,里斯本,伦敦".因此,我希望看到BST显示,因为LN目前正处于英国夏季.
看起来这个信息(时区缩写)不可用.看看GMT TimeZoneInfo,关于名字我只能看到
Id "GMT Standard Time"
StandardName "GMT Standard Time"
DaylightName "GMT Daylight Time"
Run Code Online (Sandbox Code Playgroud)
有没有办法从"GMT日光时间"或任何其他可用的Windows时区信息到达BST?
Dav*_*haw 16
该TimeZoneInfo班引荐"英国夏令时间"为"GMT夏令时",所以没有是不可能的.如果微软将它存储为"BST",它将存在于该DaylightName属性中.
虽然TimeZoneInfo多年前在BCL博客上发展了这个课程,但我没有看到他们如何选择价值观的背后的解释DaylightName.如果我猜测这将是因为这是一个"时区"而不是一个特定的城市.
看起来公共域tzdatabase被认为比Microsoft的时区数据库更完整,它确实显示了伦敦的BST(源).这是因为城市包含在此数据集中,而不仅仅是时区.有一个名为Noda Time的项目将tzdatabase带到现在可用的.Net.
您应该知道,所有标有“标准”的时区都会在夏季正确切换到夏令时。例如,TimeZoneInfo.FindSystemTimeZoneById("GMT Standard Time")将是一个可以正确处理标准时间和日光时间的对象。比如说,也是如此"Pacific Standard Time"。
| 归档时间: |
|
| 查看次数: |
6505 次 |
| 最近记录: |