我正在尝试使用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));
我尝试用不同的格式设置格式,但这是我需要解析的气象消息上使用的标准格式。任何帮助将不胜感激。
答案 0 :(得分:3)
EEE
和MMM
是简写形式。您需要使用4个字母填写完整格式:
hmm a z EEEE d MMMM yyyy
答案 1 :(得分:0)
恢复为Java 8后,该错误已消失。感谢大家的帮助!我将针对它提出报告。