我只需要显示后缀日/天,我如何才能做到这一点?这不管用:
java.lang.IllegalStateException:没有要应用后缀的字段。
private PeriodFormatter getDayTextFormatter() {
return new PeriodFormatterBuilder()
.printZeroNever()
.appendSuffix("day", "days")
.toFormatter();
}发布于 2017-05-03 17:53:47
我觉得这不可能。根据JodaTime的javadoc,如果没有字段来追加后缀,appendSuffix方法将抛出一个异常:
抛出: IllegalStateException -如果不存在要追加的字段
所以我相信JodaTime这次帮不了你。不过,你可以这样做:
private String suffix(Period p) {
int days = p.getDays();
if (days <= 0) {
return "";
}
return days == 1 ? "day" : "days";
}使用此代码,如下所示:
System.out.println(suffix(Period.days(1)));
System.out.println(suffix(Period.days(2)));
System.out.println(suffix(new Period()));产生的输出:
day
days
// and a line with an empty stringhttps://stackoverflow.com/questions/43766748
复制相似问题