Страницы

Поиск по вопросам

среда, 5 февраля 2020 г.

Как правильно перевести секунды в формат HH:mm:ss?

#java


Получаю продолжительность видео с ВК в секундах. Никак не могу перевести их в формат
HH:mm:ss

Вот мой метод

public String secToStr(int duration){
    SimpleDateFormat df = new SimpleDateFormat("hh:mm:ss");
    String time = df.format(new Date(duration));
    return time;
}


Любой duration переводится в 3 часа. Что я делаю не так? Как можно это сделать двумя-тремя
строчками?
    


Ответы

Ответ 1



Разобрался. Вот так надо public String secToStr(int duration){ return String.format("%02d:%02d:%02d", duration / 3600, duration / 60 % 60, duration % 60); }

Ответ 2



Конструктор java.util.Date(long) принимает миллисекунды. Источник public static String secToStr(int duration){ SimpleDateFormat df = new SimpleDateFormat("hh:mm:ss"); String time = df.format(new Date(duration*1000)); // Миллисекунды return time; }

Комментариев нет:

Отправить комментарий