Joda - 从PeriodFormat.getDefault()。print()中删除秒,毫秒?

时间:2011-09-22 17:39:09

标签: java jodatime

我有这样的方法:

public static String getFormattedDateDifference(DateTime startDate, DateTime endDate) {
        Period p = new Period(startDate, endDate);
        return PeriodFormat.getDefault().print(p);
    }

我想要打印出打印的秒数和毫秒数。我怎么能这样做?

1 个答案:

答案 0 :(得分:10)

如果您只想将其缩短到几分钟,为什么不直接指定正确的句号类型?

private static final PeriodType PERIOD_TO_MINUTES = 
     PeriodType.standard().withSecondsRemoved().withMillisRemoved();

public static String getFormattedDateDifference(DateTime startDate,
                                                DateTime endDate) {

    Period p = new Period(startDate, endDate, PERIOD_TO_MINUTES);
    return PeriodFormat.getDefault().print(p);
}

我希望以您想要的方式进行格式化。

请注意,如果这些确实是日期,您应该使用PeriodType.yearMonthDay()并将值指定为LocalDateDateTime应该用于日期和时间值,而不仅仅是日期。