将此ISO-8601格式的字符串转换为java.time.LocalDateTime

时间:2017-10-10 18:59:37

标签: java datetime java-time iso8601 datetime-parsing

我有一个字符串应该是ISO 8601格式。字符串的示例值是:

"2017-01-12T07:12:15-0500"

我一直试图以多种方式解析这个问题。我已经尝试了LocalDateTimeOffsetDateTime。所有这些都失败了:

OffsetDateTime ot = OffsetDateTime.parse("2017-01-12T07:12:15-0500");
OffsetDateTime ot = OffsetDateTime.parse("2017-01-12T07:12:15-0500", DateTimeFormatter.ISO_DATE_TIME);

LocalDateTime lt = LocalDateTime .parse("2017-01-12T07:12:15-0500");
LocalDateTime lt = LocalDateTime .parse("2017-01-12T07:12:15-0500", DateTimeFormatter.ISO_DATE_TIME);

异常总是

Text '2017-01-12T07:12:15-0500' could not be parsed, unparsed text found at index 19

似乎不喜欢0500部分。我认为这是ISO 8601日期的有效格式。如果不是,那么解析这个字符串的正确方法是什么?

0 个答案:

没有答案