美国东部标准时间 11 月 4 日至 5 日的夏令时问题

Posted

技术标签:

【中文标题】美国东部标准时间 11 月 4 日至 5 日的夏令时问题【英文标题】:Daylight saving issue Nov 04 - 05 in EST location 【发布时间】:2018-11-05 21:07:18 【问题描述】:

今天的日期差异为零。在比较 11 月 4 日和 11 月 5 日时,仅在今天发生的罕见问题。

我正在使用的代码

let dayDiff = Calendar.current.dateComponents([.day], from:businessDate , to: today).day!

Ipad 日期和时间设置为自动。 尝试重新启动 iPad。 尝试将日期设置为明天,我得到日期差异 1。

昨天夏令时的变化是否有任何问题? 如果是这样,我必须更新哪些设置才能按预期工作?

注意:我们可以通过更改代码来解决此问题,但想知道任何 iPad 设置都可以解决此问题。

【问题讨论】:

【参考方案1】:

在该期间夏令时发生变化的任何时区(例如美国),2018-11-04 00:00:00 UTC 和 2018-11-05 00:00:00 之间的差异UTC 只有 23 小时,不到 1 天,因此相差 0 天。

如果您使用当地时间午夜而不是 UTC 时间创建这些日期,您将获得 1 天差异的预期结果。

或者如果您使用设置为 UTC 时区的日历来计算差异,您将获得 1 天的差异。

【讨论】:

以上是关于美国东部标准时间 11 月 4 日至 5 日的夏令时问题的主要内容,如果未能解决你的问题,请参考以下文章

请问美国与中国时间时差多少?

每天在美国东部标准时间下午5点运行cron脚本[重复]

在 R 中处理东部标准时间 (EST) 和东部夏令时 (EDT)

每天美国东部标准时间下午 5 点运行 cron 脚本 [重复]

美国现在时间是几点几分几秒?

请问美国太平洋时间和北京时间时差几个小时?