如何在Java中将毫秒转换为“X分钟,x秒”?我想记录下System.currentTimeMillis()当用户在我的程序中开始某件事情时。当他完成时,我会减去电流System.currentTimeMillis()从start变量,并且我希望使用人类可读的格式(例如“XX小时、XX分钟、XX秒”或甚至“XX分钟,XX秒”)来显示经过的时间,因为它不太可能花费某人一个小时。做这件事最好的方法是什么?
3 回答

BIG阳
TA贡献1859条经验 获得超6个赞
java.util.concurrent.TimeUnit
String.format("%d min, %d sec", TimeUnit.MILLISECONDS.toMinutes(millis), TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)));
TimeUnit
toMinutes
String.format("%02d min, %02d sec", TimeUnit.MILLISECONDS.toMinutes(millis), TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)));
TimeUnit
toMinutes
int seconds = (int) (milliseconds / 1000) % 60 ;int minutes = (int) ((milliseconds / (1000*60)) % 60); int hours = (int) ((milliseconds / (1000*60*60)) % 24);//etc...

小唯快跑啊
TA贡献1863条经验 获得超2个赞
long time = 1536259;return (new SimpleDateFormat("mm:ss:SSS")).format(new Date(time));
25:36:259
添加回答
举报
0/150
提交
取消