标签: kotlinx-datetime

如何格式化 kotlinx-datetime LocalDateTime?

我正在将一些代码从使用 Java 8 转换LocalDatetime为使用该版本kotlinx-datetime,但我找不到任何格式化方法。具体来说,我正在替换FormatStyle.MEDIUM. 它们不存在并且我需要编写格式吗?

这是针对 Android 应用程序的。有没有我可以使用的 Android 特定库?或者我可以使用 Java 8 之前的方法来保持对旧版本 Android 的支持吗?

编辑(我的解决方案基于 Arvind 的答案)

fun Instant.toDateTimeString(formatStyle: FormatStyle = FormatStyle.MEDIUM): String {
    val localDatetime = toLocalDateTime(TimeZone.currentSystemDefault())
    val formatter = DateTimeFormatter.ofLocalizedDateTime(formatStyle)
    return formatter.format(localDatetime.toJavaLocalDateTime())
}
Run Code Online (Sandbox Code Playgroud)

android kotlin localdatetime kotlinx-datetime

8
推荐指数
1
解决办法
8167
查看次数

使用 kotlinx-datetime KMM 获取本周的天数

如何使用 kotlinx.datetime KMM 库获取本周的日期?

例如。我想获取本周日期的列表,例如:

“星期一,07”“星期二,08”“星期三,09”,...)

这是使用Calendar 的类似实现:

fun getDaysOfWeek(): Array<String?> {
        val dateFormat = SimpleDateFormat("EEEEE\ndd", Locale.getDefault())
        val calendar = Calendar.getInstance()
        calendar.firstDayOfWeek = Calendar.MONDAY
        calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY)

        val days = arrayOfNulls<String>(7)
        for (i in 0..6) {
            days[i] = dateFormat.format(calendar.time)
            calendar.add(Calendar.DAY_OF_MONTH, 1)
        }

        return days
    }
Run Code Online (Sandbox Code Playgroud)

android kotlin kotlin-multiplatform kotlin-multiplatform-mobile kotlinx-datetime

3
推荐指数
1
解决办法
2332
查看次数