【发布时间】:2018-10-31 00:01:58
【问题描述】:
我正在尝试将 java Date 转换为 java LocalTime,我的代码看起来像这样
Date memberBirthdayDate = club.getMembers().get(i).getDob();
System.out.println(memberBirthdayDate);
LocalDate memberBirthday = memberBirthdayDate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
当我打印出转换前后的日期时,它看起来像这样:
Before: Wed May 21 00:00:00 GMT 94
After: 0094-05-18
看起来它正在向后转换,但我不知道该怎么做!
【问题讨论】:
-
这是一个公历/儒略的差异。如果您不知道,请查看它。
LocalDate使用预测的公历。我不确定Date使用什么。对于公元 94 年(1900 多年前)的日期,你不应该对 5 月 21 日和 5 月 18 日一样感到惊讶。 -
你要么有一些非常老的俱乐部成员 (Emperor An of Han?) 要么在你的岁月中有一个错误。也许您打算改为 1994 年?
-
@OleV.V.而已!我通过 Excel 从 csv 导入,它已自动格式化日期以删除“19”......非常感谢!