Java - 将分钟和秒更改为时间格式? (毫米:ss)

标签 java android time seconds timeunit

我从总毫秒开始,我已将其转换为总分钟和总秒:

long minutes = TimeUnit.MILLISECONDS.toMinutes(itemDuration);
long seconds = TimeUnit.MILLISECONDS.toSeconds(itemDuration)
     - TimeUnit.MINUTES.toSeconds(minutes);

现在我想以 mm:ss 格式显示分钟和秒(如果偶尔有小时,则转换为 hh:mm:ss 格式)。我该如何去做呢?

谢谢!

编辑:我尝试使用 SimpleDateFormat,但是它会显示错误的时区时间,相差半小时与一整小时。 (即:如果时区为 GMT +5:30 并且项目持续时间为 5 秒,则应用程序将显示 30:05 而不是 00:05)。但是,对于相差整整一个小时的其他时区,它可以正常工作,例如 GMT+5。

除非我对 SimpleDateFormat 做错了什么?

private static final SimpleDateFormat mLengthFormatter = new SimpleDateFormat("mm:ss", Locale.getDefault());

(另外,出于好奇,如果我使用 SimpleDateFormat,并且分钟数大于 2 位数字,那么会发生什么?最大值会是 99 吗?)

最佳答案

也许可以使用字符串格式化程序来完成。

formatter.format("%2d:%2d", minutes,seconds);

关于Java - 将分钟和秒更改为时间格式? (毫米:ss),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27870116/

相关文章:

java - 在 JPanel 上绘制部分透明的 PNG

android - Android项目的依赖管理

java - Java中的二值位图,白色为1,黑色为0?

java - Jsoup 嵌套表解析不适用于搜索页面结果表

android - 适用于 Android 的 Xamarin.Forms Listview 上下文操作

android - BuildConfig.java中的意外更改,无法还原

python - 如何更新Python中收到的每个数据的时间

javascript - 在 javascript 中选择时间 (HH :MM:SS. mmm)

java - 将秒转换为 HH :MM:SS java 的问题

java - 如何从两个文本文件中读取数据并链接数据?