ミリ秒を「hh:mm:ss」形式に変換する方法は?
よくわかりません。このスレッドに偶然出会った後、私はフォーマットを備えたカウントダウンタイマーをフォーマットする方法を理解しようとしましたhh:mm:ss。 これが私の試みです- //hh:mm:ss String.format("%02d:%02d:%02d", TimeUnit.MILLISECONDS.toHours(millis), TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.MINUTES.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)), TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis))); したがって、のような値を試してみると3600000ms、になる01:59:00はずです01:00:00。明らかに私の論理に何か問題がありますが、現時点ではそれが何であるかわかりません! 誰か助けてもらえますか? 編集- 修正しました。ミリ秒をhh:mm:ssフォーマットする正しい方法は次のとおりです- //hh:mm:ss String.format("%02d:%02d:%02d", TimeUnit.MILLISECONDS.toHours(millis), TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)), TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)))); 問題はこれTimeUnit.MINUTES.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))でした。TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))代わりにこれであるはずです。