Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
TimeZone tz = TimeZone.getTimeZone(TimeZoneString); timeZoneOffsetms = tz.getRawOffset();
TimeZoneString 的值采用“GMT+02:00:00”格式
之前的代码从 2.2 到 4.1 都没有问题。
现在使用 4.2,无论时区在 UTC 之前还是之后,它总是返回一个等于 0 的偏移量。
任何想法或任何其他人都看到了这一点。
检查源代码后TimeZone,4.2 发生了重大变化。班级开始强制执行只需要几小时和几分钟的正则表达式。提供秒数会导致正则表达式模式匹配器失败,然后返回 null。
TimeZone
我这边的解决方案是检查我的服务器的值几秒钟,如果指定了就删除。由于我没有任何控制从服务器返回的值是。
如果其他人遇到这个问题,我希望这会有所帮助。