我正在尝试使用Java 8 DateTimeFormatter类来解析西班牙语中的时间字符串.经过几个小时的搜索,我找不到任何提示.返回的错误是:
java.time.format.DateTimeParseException: Text ‘905 PM AST MARTES 7 AGOSTO 2018’ could not be parsed at index 4
这似乎是“ 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));
我尝试用不同的格式设置格式,但这是我需要解析的气象消息上使用的标准格式.任何帮助将不胜感激.
解决方法:
EEE和MMM是简写形式.您需要使用4个字母填写完整格式:
hmm a z EEEE d MMMM yyyy