UTC Zeitformat in Java?


27.05.2022, 16:56

Ich habe es gerade herausgefunden:

return DateTimeFormatter.ISO_INSTANT.format(Instant.now().truncatedTo(ChronoUnit.MILLIS))

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Die letzten 7 Zeichen entfernen und ein Z dranhängen?

Ist doch ziemlich naheliegend, oder nicht?


YBCO123 
Fragesteller
 27.05.2022, 16:52

Danke, aber das ist ja Pfusch ;-)

ich habe gerade herausgefunden, wie es geht:

return DateTimeFormatter.ISO_INSTANT.format(Instant.now().truncatedTo(ChronoUnit.MILLIS));
0
jort93  27.05.2022, 16:58
@YBCO123

Sowas ist tatsächlich in der Praxis oft langsamer als einfach den String etwas zu modifizieren.
Sowohl in der Zeit die du brauchst um auf diese Lösung zu kommen, und auch in der Zeit die das Programm zur Ausführung braucht.

1
jort93  27.05.2022, 17:18
@jort93

Bei mir ist die Methode mit

return inst.toString().substring(0,23) + "Z";

Durchgehend rund 50-100% schneller als mit

return DateTimeFormatter.ISO_INSTANT.format(Instant.now().truncatedTo(ChronoUnit.MILLIS));

Mal davon abgesehen dass ich dann weniger Imports habe.

Denn, ein bisschen String manipulation ist kaum Aufwand.

0
jort93  27.05.2022, 17:23
@jort93

Wobei, fehler drin, deine Lösung ist schneller, zumindest in der Ausführung.

Wobei Effizienz vermutlich wenig ausmacht bei deinem Code an der stelle.

0

Einfach die letzten 7 Zeichen (in dem Beispiel alles hinter der 813) weg schneiden und das dann fehlende "Z" dran hängen.

String javaTimestamp = inst.toString();
return javaTimestamp.substring(0, javaTimestamp.length() - 7) + 'Z';
Woher ich das weiß:Berufserfahrung – Inhaber einer App-Agentur & 15+ Jahre Programmiererfahrung

Schneide die doch einfach raus?


YBCO123 
Fragesteller
 27.05.2022, 16:53

danke, aber das muss auch "ordentlich gehen".

Gerade habe ich die Lösung gefunden:

DateTimeFormatter.ISO_INSTANT.format(Instant.now().truncatedTo(ChronoUnit.MILLIS));
0
FaTech  27.05.2022, 16:55
@YBCO123

So gesehen ist das doch aber ein ausschneiden

1
YBCO123 
Fragesteller
 27.05.2022, 16:57
@FaTech

ja, passt. Aber ich mach es gerne so wie es gehört ;-)

0
FaTech  27.05.2022, 16:59
@YBCO123

Ja, also du magst es nicht ausschneiden, weil du ausschneiden besser findest und es machst. Das sagst du gerade 😅

0
YBCO123 
Fragesteller
 27.05.2022, 17:12
@FaTech

passt schon. Ich finde es nur so schöner, da es eine vorhandene Funktion ist. Klar macht die das selbe ;-)

0