首页 > 解决方案 > 在 Kotlin Android(最低 Android 版本 21)中从 24 小时格式转换为 12 小时格式时,从 12:00 到 12:59 的 AM/PM 值错误

问题描述

我的扩展功能:

    fun String.formatDate(): String {
        val outputFormat: DateFormat = SimpleDateFormat("MMM dd, yyyy hh:mm a")
        return outputFormat.format(SimpleDateFormat("yyyy-MM-dd hh:mm:ss", Locale.US).parse(this))
    }

当我发送“2021-11-03 12:02:12”时,我得到“2021 年 11 月 3 日 12:02 AM”

它应该是“2021 年 11 月 3 日下午 12:02”。(参考下图)

在此处输入图像描述

标签: javaandroiddatekotlintime

解决方案


修好了 有一个小错误。

我使用hh的是输入格式,即 12 小时格式。我需要HH改用。

return outputFormat.format(SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US).parse(this))


推荐阅读