[英]Joda-Time DateTimeZone
我有一个单元测试试图验证以色列/伦敦之间的一些行为,我检查的第一件事是Asia/Jerusalem
的时区偏移,如下所示
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
以色列的时区规则发生了变化。 您需要使用2013年版的IANA时区数据库。 这包含在JodaTime 2.3中。
如果无法更新JodaTime,则可以按照这些说明单独更新TZDB数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.