Как преобразовать строку HH: MM в Joda Duration? - PullRequest
11 голосов
/ 06 января 2011

У меня есть поле в форме, чтобы указать продолжительность события.Скажем, мероприятие продлится 15 минут.Таким образом, поле будет иметь следующее значение: 00:15 Если оно будет длиться 1 час: 01:00 и т. Д.

Как я могу создать Joda-Time Продолжительность объект со строкой «ЧЧ: ММ»?

Глядя на домашнюю страницу Joda-Time, он упоминает, что можно создать объект Duration из указанного объекта, используя ConverterManager и DurationConverter соответственно.

У меня вопрос, как я могу реализовать вышеупомянутые интерфейсы, чтобы я мог создать объект Duration, передав параметр «4:30»?

Заранее спасибо,

Lucas

1 Ответ

16 голосов
/ 07 января 2011

Я думаю, что лучшим способом было бы использовать PeriodFormatterBuilder следующим образом:

 PeriodFormatter hoursMinutes= new PeriodFormatterBuilder()
     .appendHours()
     .appendSeparator(":")
     .appendMinutes()
     .toFormatter();

Затем вы можете разобрать свои строки в Period объектах и ​​вызвать toStandardDuration() нате - или продолжайте работать с Period, так как это, кажется, лучше соответствует вашему варианту использования.

...