У меня есть следующая строка: String timeStamp = "2020-01-31 12:13:14 +03:00"
.И я попытался разобрать его с помощью Java 8 DateTimeFormatter.
DateTimeFormatter formatter = DateTimeFormatter.ofPattern( format );
tmpTimestamp = ZonedDateTime.parse( timeStamp, formatter );
, где format
является одним из:
"yyyy-MM-dd' 'HH:mm:ss' 'Z",
"yyyy-MM-dd' 'HH:mm:ss' 'X",
"yyyy-MM-dd' 'HH:mm:ss' 'x",
"yyyy-MM-dd HH:mm:ss Z",
"yyyy-MM-dd HH:mm:ss X",
"yyyy-MM-dd HH:mm:ss x",
Ни один не работает.Всегда я получал DateTimeParseException
, указывающий либо на символ '+', либо на символ ':' в подстроке смещения "+03: 00"
Согласно JavaDocs: Класс DateTimeFormatter"+03: 00"должен поддерживаться любым из: Z
, X
и x
.
Итак, вопрос в том, как создать строку форматирования для ее анализа?