【发布时间】:2018-08-08 19:57:22
【问题描述】:
我正在尝试使用 Java 8 DateTimeFormatter 类来解析西班牙语的时间字符串。经过几个小时的搜索,我找不到任何提示。返回的错误是:
java.time.format.DateTimeParseException:无法在索引 4 处解析文本“905 PM AST MARTES 7 AGOSTO 2018”
这似乎是“PM”元素的开始。
以下是相关代码:
DateTimeFormatterBuilder builder = new DateTimeFormatterBuilder();
builder.parseCaseInsensitive();
builder.appendPattern("hmm a z EEE d MMM yyyy");
DateTimeFormatter formatter = builder.toFormatter(new Locale("es", "PR"));
String spanishDate = "905 PM AST MARTES 7 AGOSTO 2018"
Instant issuanceInstant = Instant.from(formatter.parse(spanishDate));
我尝试了不同的格式,但这是用于我需要解析的气象信息的标准格式。任何帮助将不胜感激。
【问题讨论】:
-
仅供参考,构建器方法是可链接的。您不需要为每个单独声明。
-
您检查过您的区域设置中的上午/下午符号吗?它们可能不是 AM 和 PM,在这种情况下,可能无法理解 PM。