jodaTime PeriodFormatter未正确格式化

时间:2018-05-27 08:56:33

标签: java android kotlin jodatime periodformatter

我有这个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()”添加到格式化程序创建中,我将获得与我发送的返回值相同的秒数。

我需要转换,而不仅仅是数量,而且我对秒数不感兴趣,但它会占多少分钟,小时和天数......任何可以提供帮助的人?

1 个答案:

答案 0 :(得分:1)

您需要使用Period.normalizedStandard()说服您的句点将您的秒数转换为分钟,小时和天。

            Period(Seconds.seconds(seconds.toInt())).normalizedStandard().toString(it)

(不确定Kotlin中是否需要空圆括号()。它们是Java,我测试过。)