我有这个PeriodFormatter:
PeriodFormatterBuilder()
.appendDays()
.appendSuffix(
" day",
" days")
)
.appendSeparator(", ")
.printZeroRarelyLast()
.appendHours()
.appendSuffix(
" hours",
" hours"
)
.appendSeparator(" ")
.appendMinutes()
.appendSuffix(" minute")
.toFormatter()
.let {
Period(Seconds.seconds(seconds.toInt())).toString(it)
}
我想给秒作为输入并获得x DAYS,x HOURS,x MINUTES返回.... 这样做时我得到一个空字符串。如果我将“appendSeconds()”添加到格式化程序创建中,我将获得与我发送的返回值相同的秒数。
我需要转换,而不仅仅是数量,而且我对秒数不感兴趣,但它会占多少分钟,小时和天数......任何可以提供帮助的人?
答案 0 :(得分:1)
您需要使用Period.normalizedStandard()说服您的句点将您的秒数转换为分钟,小时和天。
Period(Seconds.seconds(seconds.toInt())).normalizedStandard().toString(it)
(不确定Kotlin中是否需要空圆括号()
。它们是Java,我测试过。)