簡體   English   中英

如何在 kotlin 編程中將毫秒轉換為時間戳

[英]How to convert milliseconds to timestamp in kotlin programming

如何在 kotlin 中將毫秒轉換為時間戳。

時間以毫秒為單位:1575959745000格式為: dd/MM/yyyy HH:MM:ss

編輯:現在,有kotlinx-datetime


目前沒有對日期的純 Kotlin 支持,只有持續時間。 您將不得不依賴目標平台的工具進行日期/時間解析和格式化。

請注意,無論您的目標平台是什么,在不定義時區的情況下將毫秒紀元轉換為格式化日期都沒有意義。

如果您的目標是 JVM ,那么您可以這樣使用java.time API:

// define once somewhere in order to reuse it
val formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss");

// JVM representation of a millisecond epoch absolute instant
val instant = Instant.ofEpochMilli(1575959745000L)

// Adding the timezone information to be able to format it (change accordingly)
val date = LocalDateTime.ofInstant(instant, ZoneId.systemDefault())
println(formatter.format(date)) // 10/12/2019 06:35:45

如果您的目標是 JavaScript ,事情會變得更加棘手。 您可以執行以下操作以使用某種默認時區和一些足夠接近的格式(由語言環境"en-gb" ):

val date = Date(1575959745000)
println(date.toLocaleString("en-gb")) // 10/12/2019, 07:35:45

您可以根據Date.toLocaleString()的標准 JS API 指定時區。 但我沒有深入研究細節。

至於 native ,我不知道。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM