Is EST5EDT equal to ET?



我知道ET(东部时间)具有来自EST和EDT的dst,但是我在不同编程语言的不同库中寻找该时区,而ET不是一种选择,但是EST5EDT是。

谢谢。

简短答案:不,它们不等,因为EST5EDT没有美国东部时间已经过去的任何变化历史。改用America/New_York,它可以。


更长的答案:

EST5EDT posix时区定义,可以在许多系统上的TZ环境变量中使用。该格式在Linux man tz和GNU文档以及IBM的本文中进行了描述。EST5EDT的所有信息都告诉您,标准时间是UTC-5和标记为EST,日光时间为UTC-4,并标记为EDT。就是这样。

随着计算机系统的发展,POSIX时区显然没有足够的信息来正确跟踪世界的时区。例如,考虑美国DST的历史,其中最后一次变化发生在2007年,将日光延长了5周。POSIX定义不能表示此类数据,导致转换错误。

因此,现在首选的机制是使用IANA TZ数据库中的时区标识符(也称为" Olson"或" Zoneinfo")。在此数据库中,美国东部时间由标识符America/New_York表示。它还具有US/Eastern的别名,您可以在大多数库中使用(JavaScript,Python等)。您可以在此处找到标识符的完整列表。

您可能会注意到EST5EDTEST一样出现为标识符之一,但不像EDT一样。这些是历史的工件,这是由于TZ数据库中的某些标识符需要向后与POSIX时区定义兼容。您现在应该考虑这些弃用,仅使用Area/Locality标识符的形式。

相关内容

  • 没有找到相关文章

最新更新