Android:如何从SystemClock.elapsedRealTime转换为人类可读的CharSeq?

时间:2015-07-22 21:49:49

标签: android system-clock

如何将SystemClock.elapsedRealTime()转换为可在文本视图中显示的人类可读CharSeq?

1 个答案:

答案 0 :(得分:2)

请参阅以下问题:How to format an elapsed time interval in hh:mm:ss.SSS format in Java?。使用这种方法:

private static String formatInterval(final long millis) {
    final long hr = TimeUnit.MILLISECONDS.toHours(millis);
    final long min = TimeUnit.MILLISECONDS.toMinutes(millis - TimeUnit.HOURS.toMillis(hr));
    final long sec = TimeUnit.MILLISECONDS.toSeconds(millis - TimeUnit.HOURS.toMillis(hr) - TimeUnit.MINUTES.toMillis(min));
    final long ms = TimeUnit.MILLISECONDS.toMillis(millis - TimeUnit.HOURS.toMillis(hr) - TimeUnit.MINUTES.toMillis(min) - TimeUnit.SECONDS.toMillis(sec));
    return String.format("%02d:%02d:%02d.%03d", hr, min, sec, ms);
}

然后假设您有对TextView的引用:

long elapsedTime = SystemClock.elapsedRealTime();
textView.setText(elapsedTime);

结果是,TextView将以人类可读的格式显示设备已启动的总时间。