J'essaie de savoir comment convertir timestamp
en datetime
en Kotlin, c'est très simple en Java, mais je ne trouve aucun équivalent dans Kotlin.
Par exemple: Horodatage d'époque (secondes depuis 1070-01-01) 1510500494
==> objet DateTime 2017-11-12 03:28:14
.
Y a-t-il une solution à cela dans Kotlin ou dois-je utiliser la syntaxe Java dans Kotlin? Donnez-moi s'il vous plaît un exemple simple pour montrer comment je peux résoudre ce problème. Merci d'avance.
ce lien n'est pas une réponse à ma question
private fun getDateTime(s: String): String? {
try {
val sdf = SimpleDateFormat("MM/dd/yyyy")
val netDate = Date(Long.parseLong(s))
return sdf.format(netDate)
} catch (e: Exception) {
return e.toString()
}
}
En fait, c'est comme Java. Essaye ça:
val stamp = Timestamp(System.currentTimeMillis())
val date = Date(stamp.getTime())
println(date)
Bien que ce soit Kotlin, vous devez toujours utiliser l'API Java. Un exemple pour les API Java 8+ convertissant la valeur 1510500494
que vous avez mentionnée dans la question commente:
import Java.time.*
val dt = Instant.ofEpochSecond(1510500494).atZone(ZoneId.systemDefault()).toLocalDateTime()
fun stringtoDate(dates: String): Date {
val sdf = SimpleDateFormat("EEE, MMM dd yyyy",
Locale.ENGLISH)
var date: Date? = null
try {
date = sdf.parse(dates)
println(date)
} catch (e: ParseException) {
e.printStackTrace()
}
return date!!
}