gpt4 book ai didi

java - 解析为 YearMonth

转载 作者:行者123 更新时间:2023-12-02 08:56:57 27 4
gpt4 key购买 nike

我想解析两个单独的字符串 "1982""SEP"进入java.time.YearMonth对象。

java.time.YearMonth.parse("1978 SEP", java.time.format.DateTimeFormatter.ofPattern("yyyy LLL"))

给我

java.time.format.DateTimeParseException: Text '1978 SEP' could not be parsed at index 5
at java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:1949)
at java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1851)
at java.time.YearMonth.parse(YearMonth.java:295)

最佳答案

这里有 3 个(可能是 2 个)问题:

  • 您的区域设置不是英语,因此“SEP”不能被理解为九月。可以通过将格式化程序设置为英语区域设置来解决此问题。
  • DateTimeFormatter 默认情况下区分大小写,因此您需要构建一个不区分大小写的格式化程序。
  • 您不应使用 "L" 标记,而应使用 "M":请参阅 this question .

以下内容将起作用:

DateTimeFormatter formatter = new DateTimeFormatterBuilder()
.parseCaseInsensitive()
.appendPattern("yyyy MMM")
.toFormatter(Locale.ENGLISH);
System.out.println(YearMonth.parse("1978 SEP", formatter));

关于java - 解析为 YearMonth,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33697795/

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