Maison >Java >javaDidacticiel >Comment convertir des millisecondes au format \'hh:mm:ss\' en Java ?

Comment convertir des millisecondes au format \'hh:mm:ss\' en Java ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-02 11:55:30350parcourir

How do I Convert Milliseconds to

Comment convertir des millisecondes en "hh:mm:ss" Format : résolu

Conversion des millisecondes en "hh:mm:ss" Le formatage peut être délicat, mais l'API TimeUnit de Java offre un moyen pratique de le faire. Après être tombé sur une tentative incorrecte provenant d'un autre fil de discussion, explorons la bonne façon d'aborder cette conversion.

Au départ, l'approche incorrecte impliquait l'utilisation de la ligne :

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

Cependant, ce calcul était erroné converti les heures en millisecondes en utilisant des minutes au lieu d'heures. La logique correcte est :

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

Voici un extrait de code corrigé :

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)));   

Cette modification garantit que les heures sont correctement converties en utilisant l'unité de temps appropriée.

De plus , le code peut être simplifié en utilisant la division de module au lieu de la soustraction :

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));

Les deux approches exploitent l'API TimeUnit et fournissent un formatage précis "hh:mm:ss" pour les millisecondes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn