In Android, können Sie die ThreeTen Backport verwenden können, eine große Rückportierung für Java 8 das neue Datum/Zeit-Klassen zusammen mit ThreeTenABP (mehr darüber, wie man es benutzt here).
Diese API eine gute Möglichkeit bietet, mit Daten zu arbeiten, viel besser als die veralteten Date
und Calendar
(die alten Klassen (Date
, Calendar
und SimpleDateFormat
) haben lots of problems und sie sind durch die neuen APIs ersetzt werden).
Um ein Datum aus einem Zeitstempel Wert zu erhalten (unter der Annahme, dass 1388620296020
die Anzahl der Millisekunden von Unix-Epoche ist), können Sie die org.threeten.bp.Instant
Klasse verwenden:
// create the UTC instant from 1388620296020
Instant instant = Instant.ofEpochMilli(1388620296020L);
System.out.println(instant); // 2014-01-01T23:51:36.020Z
Der Ausgang ist 2014-01-01T23:51:36.020Z
, weil Instant
sind immer in UTC. Wenn Sie dies zu einem Datum/Zeit in einer anderen Zeitzone konvertieren möchten, können Sie die org.threeten.bp.ZoneId
Klasse verwenden und erstellen org.threeten.bp.ZonedDateTime
:
ZonedDateTime z = instant.atZone(ZoneId.of("Europe/Paris"));
System.out.println(z); // 2014-01-02T00:51:36.020+01:00[Europe/Paris]
Der Ausgang wird 2014-01-02T00:51:36.020+01:00[Europe/Paris]
(das gleiche UTC Augenblick nach Paris Zeitzone umgewandelt) werden.
Bitte beachten Sie, dass die API die Verwendung von 3-Buchstaben-Zeitzonen-Namen (wie ECT
oder CST
) vermeidet, weil sie sind. Verwenden Sie immer die vollständigen Namen (wie Europe/Paris
oder , definiert durch IANA database) - Sie können alle verfügbaren Namen abrufen, indem Sie ZoneId.getAvailableZoneIds()
aufrufen.
Wenn Sie das Datum in einem anderen Format drucken möchten, können Sie eine org.threeten.bp.format.DateTimeFormatter
(bitte auf javadoc beziehen sich auf alle möglichen Formate sehen):
ZonedDateTime z = instant.atZone(ZoneId.of("Europe/Paris"));
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss.SSS Z");
System.out.println(fmt.format(z)); // 02/01/2014 00:51:36.020 +0100
'ich sie schon versucht ohne success' zeigen, was Sie versucht haben, so können wir helfen, es zu reparieren . Bis Sie es zeigen, können wir nicht glauben, dass Sie es versucht haben. –
Ich bin mir nicht ganz sicher, ob ich dich verstanden habe: Willst du den Zeitunterschied ** zwischen deiner 'Zeit'-Variable und jetzt-Zeitstempel ** in Jahren, Tagen, Stunden, Minuten, Sekunden ausdrücken? –
Mögliches Duplikat von [Epochtzeit in Datum umrechnen] (https://stackoverflow.com/questions/7740972/convert-epoch-time-to-date) –