Мне нужно разобрать Durations из строк. Java 8 предоставляет метод для принятия стандарта ISO-8601:
Duration.parse("p10d"); // parses as ten days
Duration.parse("pt1h"); // parses as one hour
В стандарте указано, что "разрешено опускать символ" Т "по взаимному согласию", некоторые из примеров Javadoc Durations.parse() не учитываются T
. Согласно им, следующее выражение должно анализироваться как "-6 часов и +3 минут":
"P-6H3M"
Но я обнаружил, что все выражения, опускающие T
, бросают a DateTimeParseException
. Это ошибка в методе parse()
или я что-то не хватает?