Java - change Minutes and Seconds to time format? (mm:ss)
我以总毫秒开始,我将其转换为总分钟数和总秒数:
1 2 3 | long minutes = TimeUnit.MILLISECONDS.toMinutes(itemDuration); long seconds = TimeUnit.MILLISECONDS.toSeconds(itemDuration) - TimeUnit.MINUTES.toSeconds(minutes); |
现在我想以mm:ss格式显示分钟和秒(如果偶尔有几个小时,则转换为hh:mm:ss格式)。 我该怎么做呢?
谢谢!
编辑:我已经尝试过使用SimpleDateFormat,但它会在时区显示错误的时间,相差半小时而不是整整一小时。 (即:如果时区是格林威治标准时间+5:30且项目持续时间是5秒,应用程序将显示30:05而不是00:05)..但是它适用于其他时区相差一小时 ,例如GMT + 5。
除非我在使用SimpleDateFormat做错了什么?
1 | private static final SimpleDateFormat mLengthFormatter = new SimpleDateFormat("mm:ss", Locale.getDefault()); |
(另外,出于好奇,如果我使用SimpleDateFormat,并且分钟数大于2位数,那么会发生什么?它会在99处达到最大值吗?)
可能用字符串格式化程序来做。
1 | formatter.format("%2d:%2d", minutes,seconds); |