gpt4 book ai didi

java.time.format.DateTimeParseException

转载 作者:行者123 更新时间:2023-12-02 03:06:23 38 4
gpt4 key购买 nike

我正在将正常日期解析为 LocalDate 格式。在转换时,我收到一个异常调用。

Caused by: java.time.format.DateTimeParseException: Text '2017-01-12 00:00:00.0' could not be parsed at index 2 at java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:1949) [rt.jar:1.8.0_111] at java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1851) [rt.jar:1.8.0_111] at java.time.LocalDate.parse(LocalDate.java:400) [rt.jar:1.8.0_111]

据我所知,我得到了相同的甲酸盐。所以在转换时我得到了这个异常。我是否正确。如果我是正确的如何检查输入的格式是否相同。

这是我的代码:-

        DateTimeFormatter DATE_FORMAT =  new DateTimeFormatterBuilder().appendPattern("dd/MM/yyyy").toFormatter();
LocalDate localDate = LocalDate.parse(myClass.getDate, DATE_FORMAT);
System.out.println(localDate.format(DATE_FORMAT));

最佳答案

模式“dd/MM/yyyy”与您的输入不匹配。使用模式

改为“uuuu-MM-dd HH:mm:ss.S”。同样重要的是:您不应将此类输入解析为 LocalDate,因为您的输入也包含时间信息。更完善的类型是 LocalDateTime。完整的示例在给定输入(如您的异常所示)和期望的输出之间产生差异:

DateTimeFormatter DATE_FORMAT =
new DateTimeFormatterBuilder().appendPattern("uuuu-MM-dd HH:mm:ss.S").toFormatter();
LocalDateTime ldt = LocalDateTime.parse("2017-01-12 00:00:00.0", DATE_FORMAT);
System.out.println(ldt); // 2017-01-12T00:00

System.out.println(ldt.format(DateTimeFormatter.ofPattern("dd/MM/yyyy"))); // 12/01/2017

关于java.time.format.DateTimeParseException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41676936/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com