gpt4 book ai didi

java.time.DateTimeException : Unable to extract ZoneId from temporal

转载 作者:行者123 更新时间:2023-11-30 01:42:22 41 4
gpt4 key购买 nike

当我运行第一段时,它完全正常并生成输出。但在第二种情况下,当我运行此段 2 时,它会生成

DateTimeException : Unable to extract ZoneId from temporal.

分段 1:

LocalDate ld = LocalDate.now();
System.out.println(DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL).format(ld));

分段 2:

LocalDateTime ldt = LocalDateTime.now();
DateTimeFormatter dtf = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.FULL);
System.out.println(dtf.format(ldt));

最佳答案

我认为解释起来有点复杂,因为你正在混合两件事ofLocalizedDate , ofLocalizedDateTimeFormatStyle :

在第一种情况下,您调用 ofLocalizedDateFormatStyle.FULL所以你忽略了时间部分。

在第二种情况下,您调用ofLocalizedDateTime还有FormatStyle.FULL这将包括日期的所有部分,但 LocalDate 则不是这样或LocalDateTime .

可以肯定的是,让我们尝试使用 MEDIUM ,或SHORT而不是FULL :

DateTimeFormatter.ofLocalizedDateTime(FormatStyle.MEDIUM).format(ldt)
=> 30 déc. 2019 à 14:57:40 - without any exception

有关更多详细信息,请查看此处的评论:

/**
* Full text style, with the most detail.
* For example, the format might be 'Tuesday, April 12, 1952 AD' or '3:30:42pm PST'.
*/
FULL,
/**
* Long text style, with lots of detail.
* For example, the format might be 'January 12, 1952'.
*/
LONG,
/**
* Medium text style, with some detail.
* For example, the format might be 'Jan 12, 1952'.
*/
MEDIUM,
/**
* Short text style, typically numeric.
* For example, the format might be '12.13.52' or '3:30pm'.
*/
SHORT;

要恢复,我们可以创建一个表:

<表类=“s-表”><标题>本地化时间本地化日期本地化日期时间 <正文> 本地时间中、短 本地日期全、长、中、短 本地日期时间中、短全、长、中、短中、短 分区日期时间全、长、中、短全、长、中、短全、长、中、短 偏移日期时间中、短全、长、中、短中、短
=> FULL, LONG, MEDIUM, SHORT are FormatStyle

您可以将其读作 LocalDateTime可以使用ofLocalizedDate具有所有格式样式,并且没有不能接受任何 FormatStyleofLocalizedDateTime

关于java.time.DateTimeException : Unable to extract ZoneId from temporal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59531046/

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