Проблема в том, что у вас не дата и время.Это интервал.Форматер даты и времени не сможет с этим справиться.API форматирования создают объект Date
(для устаревших классов DateFormat
) или объект TemporalAccessor
(для DateTimeFormatter
).Прямой поддержки интервалов в текущем или устаревшем API даты / времени Java нет.
Учитывая, что классы format / formatter не могут возвращать интервал, неудивительно, что строки форматирования этого не делаютподдержите это 1 .
Таким образом, единственная альтернатива - выполнить синтаксический анализ / разбивание строк самостоятельно.Ответ @ Sun - одно решение.
1 - Если бы вы могли написать шаблон форматирования / форматирования, который скажет синтаксическому анализатору, например, «игнорировать следующие 5 символов», вы могли бы создать два разныхсредства форматирования, которые проанализировали ваш пример для извлечения первого datetime и второго datetime.Но ты не можешь.Одна из причин заключается в том, что этот подход не будет работать для форматирования.