如何解决在将java.util.Date转换为org.joda.time.LocalDateTime时发生问题
||import org.joda.time.LocalDateTime;
import java.util.Date;
有了这个日期或以下日期,就可以了:
new LocalDateTime(new Date(0,1,2,30))
— 1900-01-01T02:30:00.000
new LocalDateTime(new Date(111,4,24,19,51))
— 2011-05-24T19:51:00.000
但是之前的日期有些令人无法理解:
new LocalDateTime(new Date(0,29,50))
— 1900-01-01T01:59:50.000
new LocalDateTime(new Date(0,1))
— 1899-12-31T23:30:00.000
new LocalDateTime(new Date(-50,1))
— 1849-12-31T23:30:20.000
new LocalDateTime(new Date(-116,6,4))
— 1784-07-03T23:30:20.000
谁知道,这是什么,以及如何预防此问题?
解决方法
您正在使用哪个时区?看来您正在处理时钟不连续性,可能是在1900年1月1日凌晨2点左右。这意味着本地时钟跳过了一定时间,并且正式不存在。也可能是DST的更改。最后三行中的一致差异看起来很奇怪-也许Java \的Calendar和Joda Time使用了不同版本的时区数据库,但其中之一缺少更改。
您可以在链接到的站点上检查您的时区以进行更改。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。