我整个上午都在试图找到一种方法来实现我最初认为相对容易的任务:将以数字方式表示的持续时间转换为可读的方式。例如,对于 3.5 的输入,输出应该是“3 年零 6 个月”。
根据我正在阅读的内容,似乎强烈推荐 Joda Time 库。使用该库并遵循这篇文章,我正在尝试以下操作:
Period p = new Period(110451600000L); // 3 years and a half
PeriodFormatter formatter = new PeriodFormatterBuilder()
.appendYears()
.appendSuffix(" year", " years")
.appendSeparator(" and ")
.appendMonths()
.appendSuffix(" month", " months")
.toFormatter();
System.out.println(formatter.print(p));
但是输出什么都没有。不知道为什么它不起作用。
我也尝试使用Apache DurationFormatUtils,但不起作用。
有人有想法吗?
提前致谢。