Неверный формат: "2019-05-10 18:45:00 CEST + 0200" искажен в "CEST + 0200" - PullRequest
0 голосов
/ 09 мая 2019

Невозможно преобразовать этот формат даты с временем joda в местное время

Я уже использую новейшую joda версию 2.10.1, и я попробовал много решений, изменив формат или добавив локаль, но ни одна из них не работает.

val dateTimeFormatter = DateTimeFormatterBuilder().appendPattern("yyyy-MM-dd HH:mm:ss zZ").toFormatter()
        return dateTimeFormatter.withLocale(Locale.GERMANY).parseDateTime("2019-05-10 18:45:00 CEST+0200")

Вопрос, упомянутый в комментариях ниже, не является хорошей отправной точкой для того, чтобы рассматривать мой вопрос как дубликат, потому что ответы там не помогают в действительности.

1 Ответ

0 голосов
/ 10 мая 2019

В итоге я удалил CEST из строки времени и просто использовал смещение (+0200), и оно прекрасно работает с java.time и jodatime. Однако я заметил кое-что интересное: существует разница в том, как java.time и jodatime обрабатывают шаблоны дат. Например, следующая строка даты 2019-05-10 18:45:00 CEST+0200 и следующий шаблон yyyy-MM-dd HH:mm:ss ZZZ будут работать в java.time, но не будут jodatime, но с шаблоном yyyy-MM-dd HH:mm:ss Z они оба будут понимать содержимое даты.

...