最近在做一个小的下载器,在计算下载内容所消耗时间时,需要把得到的毫秒数转成时间格式
例如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));
}
}