gpt4 book ai didi

java - Joda-时间 DateTimeZone

转载 作者:行者123 更新时间:2023-12-02 06:44:58 25 4
gpt4 key购买 nike

我有一个单元测试,试图验证以色列/伦敦之间的某些行为,我检查的第一件事是亚洲/耶路撒冷的时区偏移,如下

val clientTimezone = DateTimeZone.forID("Asia/Jerusalem")
val now = new DateTime(DateTimeZone.forID("Etc/GMT"))
val clientOffset = clientTimezone.getOffset(now) / (1000 * 60)

现在伦敦是下午 5 点,以色列是下午 7 点,格林威治标准时间是下午 4 点,但是当我运行此代码时,我将 now 初始化为 16:00,并且 clientOffset = 120 而不是 180。如果我将 Asia/Jerusalem 替换为 Europe/London,我会得到 clientOffset = 60。

我是否正确使用了 Joda,还是它的时间错误?在本周末之前这些测试都很好。这是 joda-time 2.1 版本

最佳答案

以色列的时区规则已更改。您需要使用 2013d 版本的 IANA 时区数据库。这包含在 JodaTime 2.3 中。

如果无法更新JodaTime,可以按照these instructions单独更新TZDB数据.

关于java - Joda-时间 DateTimeZone,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18746188/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com