Продолжительность между двумя датами в Groovy - PullRequest
32 голосов
/ 03 мая 2010

Есть ли способ в Groovy получить продолжительность между двумя объектами Date? Формат продолжительности, который я ищу, будет примерно таким: 2 дня, 10 часов, 30 минут ...

Спасибо

Ответы [ 2 ]

57 голосов
/ 03 мая 2010

TimeCategory имеет несколько методов для получения продолжительности. Вы можете использовать его как

use(groovy.time.TimeCategory) {
    def duration = date1 - date2
    print "Days: ${duration.days}, Hours: ${duration.hours}, etc."
}
6 голосов
/ 11 августа 2017

Использование () - Синтаксис для меня странный. поэтому я предпочитаю это так:

def duration = groovy.time.TimeCategory.minus(
  new Date(),
  new Date(session.creationTime)
);
def values = [
            "seconds: " + duration.seconds,
            "min: " + duration.minutes,
            "hours: " + duration.hours,
            "days: " + duration.days,
            "ago: " + duration.ago,
];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...