Почему DurationFormatUtils игнорирует год в формате?
У меня есть этот код:
return DurationFormatUtils.formatDuration(2034430000000L, yyyy-MM-dd_HH:mm:ss.SSS)
результат: 0000-00-23546_15:26:40.000
почему год и дни равны 0 и так много дней?
1 ответ
Потому что в документации сказано так: DurationFormatUtils.formatDuration()
,
Из документов:
Этот метод форматирует длительности, используя дни и нижние поля шаблона формата. Месяцы и больше не используются.
Причина в том, что когда вы говорите о длительности, как долго это месяц? Как долго длится год? Месяц - это переменное количество дней, как и год. Теперь, если эти длительности закреплены, такая вещь может иметь смысл; в этих случаях это то, что Joda-Time назвал бы периодами.
Но в целом продолжительность составляет всего несколько миллисекунд, поэтому месяцы и годы действительно не имеют смысла.