Java でミリ秒を「hh:mm:ss」形式に変換するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-02 11:55:30
オリジナル
283 人が閲覧しました

How do I Convert Milliseconds to

ミリ秒を "hh:mm:ss" に変換する方法 形式: 解決済み

ミリ秒を "hh:mm:ss" に変換する形式は扱いにくい場合がありますが、Java の TimeUnit API を使用すると便利な方法が提供されます。別のスレッドからの誤った試みに遭遇した後、この変換に取り組む正しい方法を探ってみましょう。

当初、誤ったアプローチには次の行が含まれていました:

TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.MINUTES.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))
ログイン後にコピー

しかし、この計算は誤っていました。時間ではなく分を使用して時間をミリ秒に変換しました。正しいロジックは次のとおりです:

TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))
ログイン後にコピー

修正されたコード スニペットは次のとおりです:

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)));   
ログイン後にコピー

この変更により、適切な時間単位を使用して時間が正しく変換されるようになります。

さらにの場合、減算の代わりにモジュラス除算を使用してコードを簡素化できます。

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));
ログイン後にコピー

どちらのアプローチも TimeUnit API を活用し、ミリ秒単位の正確な "hh:mm:ss" 形式を提供します。

以上がJava でミリ秒を「hh:mm:ss」形式に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!