0

私は合計ミリ秒から始めました。これを合計分と合計秒に変換しました:

long minutes = TimeUnit.MILLISECONDS.toMinutes(itemDuration);
long seconds = TimeUnit.MILLISECONDS.toSeconds(itemDuration)
     - TimeUnit.MINUTES.toSeconds(minutes);

ここで、分と秒を mm:ss 形式で表示したいと考えています (時折ある場合は、hh:mm:ss 形式に変換します)。どうすればこれを行うことができますか?

ありがとう!

編集:SimpleDateFormat を使用してみましたが、タイム ゾーンで間違った時刻が表示され、1 時間と 30 分の差があります。(つまり: タイム ゾーンが GMT +5:30 で、アイテムの持続時間が 5 秒の場合、アプリは 00:05 ではなく 30:05 を表示します)。ただし、1 時間異なる他のタイム ゾーンでも問題なく動作します。 、GMT+5 など。

SimpleDateFormat で何か間違ったことをしていない限り?

private static final SimpleDateFormat mLengthFormatter = new SimpleDateFormat("mm:ss", Locale.getDefault());

(また、好奇心から、SimpleDateFormat を使用し、分数が 2 桁を超えるとどうなるでしょうか? 99 で最大になりますか?)

4

1 に答える 1

1

おそらく文字列フォーマッタでそれを行うことができます。

formatter.format("%2d:%2d", minutes,seconds);
于 2015-01-09T22:44:24.073 に答える