gpt4 book ai didi

jodatime - Joda DateTime 与 PeriodFormat 的差异,如 1 :30

转载 作者:行者123 更新时间:2023-12-01 12:54:35 25 4
gpt4 key购买 nike

我正在使用 Period 来获取两个 DateTime 之间的时差。

 Period p = new Period(startDate, endDate,
PeriodType.standard().withSecondsRemoved().withMillisRemoved());

return PeriodFormat.getDefault().print(p);

这给了我“1 小时 30 分钟”的形式。

我怎样才能得到像“1:30”或“:15”这样的东西?

我想我可以这样做:

public static int getHoursDifference(DateTime startDate, DateTime endDate) {
Period p = new Period(startDate, endDate);
return p.getHours();
}

同样的几分钟,然后连接......?

最佳答案

您可以使用 PeriodFormatterBuilder .

类似的东西:

PeriodFormatter formatter = new PeriodFormatterBuilder()
.minimumPrintedDigits(2)
.printZeroAlways()
.appendHours()
.appendSeparator(":")
.appendMinutes()
.toFormatter();

将为您提供一个格式化程序,然后您可以使用它来代替您当前使用的默认格式,我认为它会为您提供类似于您正在寻找的格式的东西。如果您对其他字段感兴趣,您当然可以附加其他字段。

并且更改或跳过对 minimumPrintedDigitsprintZeroAlways 的调用可能能够使其在小时部分为零时不显示和/或不显示前导零。

关于jodatime - Joda DateTime 与 PeriodFormat 的差异,如 1 :30,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10542394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com