如何将时间"0000-00-00 00:00:00"设置为本地日期时间?



要编写测试,我需要将LocalDateTime设置为0000-00-00 00:00:00。 当我尝试使用格式化程序设置它时:

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime.parse("0000-00-00 00:00:00", formatter)

它抛出一个异常:

java.time.format.DateTimeParseException: Text '0000-00-00 00:00:00' could not be parsed: Invalid value for YearOfEra (valid values 1 - 999999999/1000000000): 0

我该怎么做?

您正在尝试将第 0 年的第 0 个月的第 0 天设置为第 0 年。所以这里有 3 个错误:

  • 任何月份都没有第 0 天。天总是从 1 开始
  • 任何一年中都没有月份 0。月份总是从 1 开始
  • 公历中没有 0 年。这就是您遇到的错误(Invalid value for YearOfEra(。应设置大于 0 的年份

最新更新