JodaTime для типов схем XML / XACML - PullRequest
1 голос
/ 13 декабря 2011

Я пытаюсь использовать Joda для поддержки всех времен данных XACML, но у меня возникают проблемы с получением его для анализа длительности по строкам, таким как "P50DT4H4M3S". Я подозреваю, что проблема в том, что ISO и W3C разошлись в какой-то момент, и Joda поддерживает путь ISO.

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

Мне известны типы javax.xml, которые, кажется, выполняют то, что мне нужно, за исключением того, что они основаны на GregorianCalendar, которого я надеялся избежать с помощью Joda.

Ответы [ 2 ]

3 голосов
/ 15 декабря 2011

P50DT4H4M3S - это Period в терминологии Joda-Time, и его можно проанализировать с помощью PeriodFormatter. В ISOPeriodFormat .

есть стандартные парсеры.
0 голосов
/ 15 января 2014

Примерно так:

PeriodFormatter formatter = ISOPeriodFormat.standard();
Period period = asd.parsePeriod(periodString);
Duration duration = dsa.toStandardDuration();
...