如何将jodatime持续时间转换为格式为hh:mm:ss的字符串?

时间:2016-06-27 12:36:26

标签: java android time jodatime

我正在使用jodatime库。我想在现在和结束时间之间显示倒计时并将其显示给用户。我通过以下方式获得要显示的持续时间:

Interval time = new Interval(DateTime.now(), end_time);
Duration duration = time.toDuration();

现在我想将持续时间转换为格式为hh:mm:ss的字符串。最简单的方法是什么?

1 个答案:

答案 0 :(得分:2)

使用apache.commons.lang中的DurationUtils

import org.apache.commons.lang.time.DurationFormatUtils;

DurationFormatUtils.formatDuration(duration.getMillis(), "HH:mm:ss")

或者您使用:

DateFormat df = new SimpleDateFormat("hh:mm:ss");
String formatted = df.format(new Date(duration.getMillis()));

或另一个非常简短的解决方案:

String formatted = String.format("%1$tI:%1$tM:%1$tS", duration.getMillis());