Java 如何将毫秒转换为“mmm:ss”格式?
我制作了一个以mmm:ss格式显示结果的类 代码如下: 如果我通过Java 如何将毫秒转换为“mmm:ss”格式?,java,android,Java,Android,我制作了一个以mmm:ss格式显示结果的类 代码如下: 如果我通过 mCountDownTimer = new CountDown(1000 * 60 * 30, 1000); mCountDownTimer.start(); 它工作得很好,给了我30分钟的时间 但是如果我想展示180分钟 从60分钟开始 有谁能帮我解决这个问题吗?您可以在代码中使用下面的转换函数 Long hour = TimeUnit.HOURS.convert(millisUntilFinished, T
mCountDownTimer = new CountDown(1000 * 60 * 30, 1000);
mCountDownTimer.start();
它工作得很好,给了我30分钟的时间
但是如果我想展示180分钟
从60分钟开始
有谁能帮我解决这个问题吗?您可以在代码中使用下面的转换函数
Long hour = TimeUnit.HOURS.convert(millisUntilFinished, TimeUnit.MILLISECONDS);
millisUntilFinished= millisUntilFinished% (1000 * 60 * 60);
Long minutes = TimeUnit.MINUTES.convert(millisUntilFinished, TimeUnit.MILLISECONDS);
millisUntilFinished= millisUntilFinished% (1000 * 60);
Long seconds = TimeUnit.SECONDS.convert(millisUntilFinished, TimeUnit.MILLISECONDS);
millisUntilFinished= millisUntilFinished% 1000;
Long milisec = millisUntilFinished;
然后刚刚过去的变量字符串格式化程序
String text = String.format("%03d:%02d", minutes , seconds );
您的代码减少到分钟(不包括任何小时),只需删除-TimeUnit.hours.tominutesmeunit.millizes.toHoursms的位即可修复此问题var date=new date$'date'.val;
date.setTimedate.getTime-date.getTimezoneOffset*60*1000 可能是因为你的计划中没有小时部分formatting@RC. 谢谢你的建议,你能帮我解决这个问题吗
Long hour = TimeUnit.HOURS.convert(millisUntilFinished, TimeUnit.MILLISECONDS);
millisUntilFinished= millisUntilFinished% (1000 * 60 * 60);
Long minutes = TimeUnit.MINUTES.convert(millisUntilFinished, TimeUnit.MILLISECONDS);
millisUntilFinished= millisUntilFinished% (1000 * 60);
Long seconds = TimeUnit.SECONDS.convert(millisUntilFinished, TimeUnit.MILLISECONDS);
millisUntilFinished= millisUntilFinished% 1000;
Long milisec = millisUntilFinished;
String text = String.format("%03d:%02d", minutes , seconds );