如何将 jodatime Duration 转换为格式为 hh:mm:ss 的字符串?
How do I convert a jodatime Duration into a string formatted as hh:mm:ss?
我正在使用 jodatime 库。我想显示从现在到结束时间之间的倒计时并将其显示给用户。我通过以下方式获得要显示的持续时间:
Interval time = new Interval(DateTime.now(), end_time);
Duration duration = time.toDuration();
现在我想将持续时间转换为格式为 hh:mm:ss
的字符串。最直接的方法是什么?
使用 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());
我正在使用 jodatime 库。我想显示从现在到结束时间之间的倒计时并将其显示给用户。我通过以下方式获得要显示的持续时间:
Interval time = new Interval(DateTime.now(), end_time);
Duration duration = time.toDuration();
现在我想将持续时间转换为格式为 hh:mm:ss
的字符串。最直接的方法是什么?
使用 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());