0

私はミリ秒単位のデータを持っており、CountDownクラスでは、時間を次の形式で表示します:日:時間:分:秒。ミリ秒/1000の場合は合計秒(ミリ秒/ 1000)/ 60の場合は合計分などがありますが、カウントダウンをこの形式で表示するにはどうすればよいですか:2日:21時間:56分:00秒

ありがとう

4

2 に答える 2

1

mod(%)演算子を使用して、各部門から余りを抽出する必要があると思います。

これはどう:

final long SEC_PER_DAY = 24 * 60 * 60;
final long SEC_PER_HOUR = 60 * 60;
final long SEC_PER_MIN = 60;

public void onTick(long millis) {
    long tot_sec   = millis/1000;
    long rem_days  = tot_sec / SEC_PER_DAY;
    long rem_hours = (tot_sec % SEC_PER_DAY) / SEC_PER_HOUR;
    long rem_mins  = ((tot_sec % SEC_PER_DAY) % SEC_PER_HOUR) / SEC_PER_MIN;
    long rem_secs  = ((tot_sec % SEC_PER_DAY) % SEC_PER_HOUR) % SEC_PER_MIN;

    // and then format as you please...
}
于 2012-04-17T15:33:26.867 に答える
0

DateFormatまたはSimpleDateFormatを使用する必要があります。http://developer.android.com/reference/java/text/DateFormat.htmlを参照してください

まず、ミリ秒を日付に変換する必要があります。

Date date = new Date();
date.setTime(millis);

次に、DateFormatを使用して、タイムスタンプを人間が読める形式の文字列にフォーマットできます。

于 2012-04-17T08:50:33.897 に答える