32 lines
960 B
Kotlin
32 lines
960 B
Kotlin
package com.sw.dualscreen.utils
|
|
|
|
import java.time.LocalDateTime
|
|
import java.time.ZoneId
|
|
import java.time.format.DateTimeFormatter
|
|
import java.util.Date
|
|
|
|
|
|
object DateTimeUtil {
|
|
|
|
const val YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"
|
|
|
|
fun formatDateTime(dateTime: LocalDateTime, pattern: String = YYYY_MM_DD_HH_MM_SS): String {
|
|
val formatter = DateTimeFormatter.ofPattern(pattern)
|
|
return dateTime.format(formatter)
|
|
}
|
|
|
|
fun convert(dateStr: String, pattern: String = YYYY_MM_DD_HH_MM_SS): Date {
|
|
val formatter = DateTimeFormatter.ofPattern(pattern)
|
|
val ldt = LocalDateTime.parse(dateStr, formatter)
|
|
val zdt = ldt.atZone(ZoneId.systemDefault())
|
|
return Date.from(zdt.toInstant())
|
|
}
|
|
|
|
fun main() {
|
|
val now = LocalDateTime.now()
|
|
println("默认格式: ${formatDateTime(now)}")
|
|
println("自定义格式: ${formatDateTime(now, "yyyy年MM月dd日 HH时mm分ss秒")}")
|
|
}
|
|
|
|
|
|
} |