Voici le format d'horodatage dont j'ai besoin: 2018-03-22 19: 02: 12.337909
Kotlin n'a pas de temps pour gérer ses propres classes, vous devez donc simplement utiliser Java Java.time
. Pour un horodatage ISO-8601 (qui est le format préféré):
DateTimeFormatter.ISO_INSTANT.format(Instant.now())
Cela renverra 2018-04-16T17:00:08.746Z
. Pour votre format, ou si vous avez besoin d'un fuseau horaire différent, vous pouvez spécifier ceux-ci:
DateTimeFormatter
.ofPattern("yyyy-MM-dd HH:mm:ss.SSSSSS")
.withZone(ZoneOffset.UTC)
.format(Instant.now())
Voir Java.time.format.DateTimeFormatter
JavaDoc pour plus de détails sur la façon de spécifier une chaîne de format.
Les classes Java.time sont regroupées avec Android 26 et versions ultérieures, et avec Java 8 et versions ultérieures). Java.time la fonctionnalité est backportée vers Java 6 & Java 7 dans le ThreeTen-Backport projet. Adapté pour les versions précédentes Android (<26) dans ThreeTenABP . Voir Comment utiliser ThreeTenABP … .
Essayez Timestamp(System.currentTimeMillis())
j'utilise l'API 19 et cela fonctionne pour moi
J'utilise ceci
val timeStamp: String = SimpleDateFormat("yyyyMMdd_HHmmss").format(Date())
et ici vous avez tous les modèles de date et d'heure https://developer.Android.com/reference/Java/text/SimpleDateFormat
val currentTimestamp = System.currentTimeMillis()