Heim  >  Artikel  >  Java  >  Wie konvertiere ich Millisekunden in das Format „hh:mm:ss“ in Java?

Wie konvertiere ich Millisekunden in das Format „hh:mm:ss“ in Java?

Barbara Streisand
Barbara StreisandOriginal
2024-11-02 11:55:30279Durchsuche

How do I Convert Milliseconds to

So konvertieren Sie Millisekunden in „hh:mm:ss“ Format: Aufgelöst

Millisekunden in „hh:mm:ss“ konvertieren Das Format kann schwierig sein, aber die TimeUnit-API von Java bietet eine praktische Möglichkeit, dies zu tun. Nachdem wir auf einen falschen Versuch aus einem anderen Thread gestoßen sind, wollen wir nun herausfinden, wie wir diese Konvertierung richtig angehen können.

Anfangs bestand der falsche Ansatz darin, die Zeile zu verwenden:

TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.MINUTES.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))

Diese Berechnung war jedoch fehlerhaft Stunden in Millisekunden umgerechnet, wobei Minuten statt Stunden verwendet wurden. Die richtige Logik lautet:

TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))

Hier ist ein korrigierter Codeausschnitt:

String.format("%02d:%02d:%02d", 
    TimeUnit.MILLISECONDS.toHours(millis),
    TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)), // Corrected line
    TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)));   

Diese Änderung stellt sicher, dass Stunden korrekt in die richtige Zeiteinheit umgewandelt werden.

Außerdem , kann der Code durch Moduldivision statt Subtraktion vereinfacht werden:

String hms = String.format("%02d:%02d:%02d", TimeUnit.MILLISECONDS.toHours(millis),
    TimeUnit.MILLISECONDS.toMinutes(millis) % TimeUnit.HOURS.toMinutes(1),
    TimeUnit.MILLISECONDS.toSeconds(millis) % TimeUnit.MINUTES.toSeconds(1));

Beide Ansätze nutzen die TimeUnit-API und bieten eine präzise „hh:mm:ss“-Formatierung für Millisekunden.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich Millisekunden in das Format „hh:mm:ss“ in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn