0

客户希望查看 Windows 时区,Time此处列中的时区https://support.microsoft.com/en-us/help/973627/microsoft-time-zone-index-values除了使用 UTC 而不是 GMT。

而且还想看缩写。但我找不到任何官方的 Windows 时区缩写列表。我发现的是 IANA 缩写。

我们打算将 Windows 时区转换为 IANA 时区以处理时间。

但问题是 IANA abbreviations=Windows timezones abbreviations 吗?如果没有,我在哪里可以找到 Windows 缩写规则的列表?

4

1 回答 1

3

一些东西:

  • 您指向的列表不是Microsoft Windows 时区的官方列表。它是 Windows Embedded 1.1 中一个非常古老的静态列表的副本,该列表早已被弃用。目前在 Microsoft 网页上没有积极维护的所有 Windows 时区列表。

  • 要获取 Windows 时区列表,请TZUTIL /L在命令行上调用。它将返回系统上安装的每个时区的 ID 和显示名称。

  • 如果您查看CLDR 区域映射文件,您会看到许多 Windows 区域映射到多个 IANA 区域。如果您只是将 Windows 区域映射到001“黄金区域”,您最终可能会选择不适用于用户的 IANA 缩写。因此,如果您采用您描述的方法(转换为 IANA 并采用 IANA 缩写),请务必在进行映射时考虑国家代码。

还:

  • 任何地方都没有官方的单一时区缩写列表,因为时区缩写不是标准化的。我们可能在英语中使用的许多缩写不一定适用于非英语使用者,而且许多时区根本没有缩写。

  • 即使在英语中,许多时区缩写也是矛盾的或模棱两可的。

有问题的时区缩写的一些示例:

  • CST是指中央标准时间、古巴标准时间还是中国标准时间?
  • IST是指印度标准时间、以色列标准时间还是爱尔兰标准时间?
  • 夏威夷应该使用HSTorHAST吗?
  • 由于加拿大魁北克的官方语言是法语,是否应该HNE使用 (Heure Normale de l'Est) 而不是(Eastern Standard Time)?EST
  • 白俄罗斯明斯克的时区缩写是什么?您可能会认为MSK,但这对某些人来说是冒犯的,因为该缩写也常用于俄罗斯莫斯科。白俄罗斯全国只有一个时区,他们在那里不会说英语。IANA 将缩写作为简单的数字 UTC 偏移量+03 (自 2011 年年中起)。

由于以上问题...

  • Windows 时区没有正式的时区缩写列表。Windows 不使用它们。

  • 您可能会在CLDR 数据中找到一些时区缩写,并通过各种库和 API 公开,但它们仅在数据集中稀疏地填充。CLDR 没有可靠地收集或维护时区缩写。

于 2020-10-21T17:50:53.803 回答