最近在做一個小的下載下傳器,在計算下載下傳内容所消耗時間時,需要把得到的毫秒數轉成時間格式
例如66000毫秒 就是00:01:06 這樣子,在網上找了很長時間也沒有找到,索性自己寫一個工具類
package com.lis.util;
public class StringUtil {
/**
* 毫秒轉日期字元串 65秒轉換成 00:01:05
*
* @param str
* @return
*/
public static String secondsToStr(long time) {
String result = "";
int seconds = new Double(time/1000).intValue();
//System.out.println("毫秒數:-->"+time+" 秒-->"+seconds);
int hour = 0;
int minute = 0;
int second = 0;
if (seconds > 60) {
if (seconds > 3600) {
hour = seconds / 3600;
minute = seconds % 3600 / 60;
second = seconds % 3600 % 60 % 60;
} else {
second = seconds % 60;
minute = seconds / 60;
}
} else {
second = seconds;
}
result = parseStr(hour) + ":" + parseStr(minute) + ":"
+ parseStr(second);
return result;
}
private static String parseStr(int time) {
if (time >= 10) {
return time + "";
}
return "0" + time;
}
public static void main(String[] args) {
//測試 2000毫秒 轉為 00:00:02
System.out.println(StringUtil.secondsToStr(2000));
}
}