如何显示大于24小时的小时时差?

时间:2014-05-11 05:21:24

标签: datetime jasper-reports

我很难显示小时数超过24小时的时间差。 现在我在 iReport

中使用以下内容
(new SimpleDateFormat("dd':'HH':'mm':'ss")).format(new Date($V{avgDuration}.longValue()*1000))

其中$V{avgDuration} jrxml 文件中的变量,它是中两个日期之间的平均时差。这里显示 1天1小时,但我希望它 25小时。我该怎么办?

1 个答案:

答案 0 :(得分:0)

我使用PeriodFormatterBuilder解决了这个问题。但为此,我需要使用joda-time库。

text box文件中的jrxml的表达式编辑器中,只写了以下内容:

new org.joda.time.format.PeriodFormatterBuilder()
        .printZeroAlways()
        .minimumPrintedDigits(2)
        .appendHours().appendSeparator(":")
        .appendMinutes().appendSeparator(":")
        .appendSeconds()
        .toFormatter()
        .print(new org.joda.time.Period(
            $V{avgDuration}.longValue()*1000))