Duration.parse пример

1

Я использую класс Jodatime Duration, чтобы добавить длительность, например 02:10, в DateTime, например, 2014-08-02T11: 34, используя withDurationAdded (duration, 1).

Я создал продолжительность, используя Duration.parse("02:10"). Я получаю IllegalFormatException для "02:10". Я не вижу аргумента formatSpecifier; как мне правильно создать эту продолжительность? Руководство по быстрому запуску jodatime не дает пример разбора: http://joda-time.sourceforge.net/key_duration.html

Теги:
jodatime

1 ответ

2
Лучший ответ

Javadoc задает требуемый формат для параметра Duration.parse.

Разбирает длительность из указанной строки.

Это анализирует формат PTa.bS в соответствии с AbstractDuration.toString().

Вам нужно будет создать собственный форматировщик - вот пример кода:

import org.joda.time.*;
import org.joda.time.format.*;

public class Test {
    public static void main(String[] args) {
        PeriodFormatter formatter = new PeriodFormatterBuilder()
            .appendHours()
            .appendLiteral(":")
            .appendMinutes()
            .toFormatter();
        Duration duration = formatter.parsePeriod("02:10").toStandardDuration();
        System.out.println(duration);
    }
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню