时区缩写

Timezones abbreviations

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

也想看缩写。但我找不到任何官方 windows 时区缩写列表。我找到的是 IANA 缩写。

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

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

几件事:

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

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

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

还有:

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

  • 即使在英语中,许多时区缩写也是相互矛盾或含糊不清的。

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

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

由于以上问题...

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

  • 您可能会发现 一些 时区缩写列在 CLDR data 中,并暴露在各种库和 API 中,但它们仅在数据集。 CLDR 没有可靠地收集或维护时区缩写。