如何将Long值转换为日期时间并将当前时间转换为Long kotlin?

时间:2018-03-29 08:36:39

标签: android kotlin

代码A可以将长值转换为日期值,就像2018.01.10

一样
  1. 我希望获得Date + Time值,例如2018.01.10 23:11,我怎么能用Kotlin?

  2. 我希望将当前时间转换为长值,我怎么能用Kotlin?

  3. 谢谢!

    代码A

    fun Long.toDateString(dateFormat: Int =  DateFormat.MEDIUM): String {
        val df = DateFormat.getDateInstance(dateFormat, Locale.getDefault())
        return df.format(this)
    }
    

2 个答案:

答案 0 :(得分:5)

试试这个,我使用SimpleDataFormat。

fun convertLongToTime(time: Long): String {
    val date = Date(time)
    val format = SimpleDateFormat("yyyy.MM.dd HH:mm")
    return format.format(date)
}

fun currentTimeToLong(): Long {
    return System.currentTimeMillis()
}

fun convertDateToLong(date: String): Long {
    val df = SimpleDateFormat("yyyy.MM.dd HH:mm")
    return df.parse(date).time
}

要使用Android Studio将java文件转换为kotlin文件,请选择Code->Convert java file to kotlin file.

答案 1 :(得分:0)

不需要任何复杂的东西:

获取当前时间和日期作为 Date 对象

val dateTime = Calendar.getInstance().time // Date

将其转换为 Long

val dateTimeAsLong = dateTime.time // Long

将该 Long 转换回日期

val backToDate = Date(dateTimeAsLong) // Date