如何在Kotlin中将日期字符串转换为时间戳?

时间:2018-02-17 07:22:55

标签: date kotlin timestamp unix-timestamp

我想将日期字符串转换为日期字符串中的unix时间戳,例如14-02-2018

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:8)

使用它将日期字符串转换为UNIX时间戳

val date = SimpleDateFormat("dd-MM-yyyy").parse("14-02-2018")
println(date.time)

答案 1 :(得分:8)

从JDK 8开始,你可以这样做:

val l = LocalDate.parse("14-02-2018", DateTimeFormatter.ofPattern("dd-MM-yyyy"))

val unix = l.atStartOfDay(ZoneId.systemDefault()).toInstant().epochSecond

请注意,该示例使用系统的默认时区。

答案 2 :(得分:2)

为了向后兼容,请使用 ThreeTenABP 库,但 Android 本身的更好解决方案将启用支持 https://developer.android.com/studio/write/java8-support#library-desugaring

启用后,您现在可以将字符串日期解析为任何有效的格式模式

LocalDate.parse(date, DateTimeFormatter.ISO_LOCAL_DATE_TIME).format(
        DateTimeFormatter.ofPattern("MMM. dd, yyyy")