Kotlin字符串日期格式化程序



我正在尝试解析字符串日期

"AuthDate": "2021-08-19T23:40:52+04:00",
下面是解析和显示 的代码
var date = item?.authDate.toString()
val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ssz")
val parsedDate = formatter.parse(date)
val displayFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd, HH:MM:SS")
text = displayFormatter.format(parsedDate).toString()

这很好,除了一件事,秒总是显示在"00"

例如,authDate为2021-08-19T23:40:52+04:00

显示authDate是2021-08-19, 23:40:00

not23:40:52as I want.

val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ssz")
...
val displayFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd, HH:MM:SS")

注意第一个使用mmss,而第二个使用MMSS。前者要求解析小时、分钟,然后是秒。后者说要显示小时,月份,然后是几分之一秒。请参阅文档以获取说明符的完整列表,但您可能正在寻找

val displayFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd, HH:mm:ss")

最新更新