将毫秒数(秒数)转换为时间格式

最近在做一个小的下载器,在计算下载内容所消耗时间时,需要把得到的毫秒数转成时间格式

例如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));
}

}

posted @ 2013-02-05 09:17  Code_Log  阅读(3324)  评论(0编辑  收藏  举报