加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

将经过的毫秒转换为正确的Java日期格式?

发布时间:2020-12-15 05:10:03 所属栏目:Java 来源:网络整理
导读:我在开发过程中陷入困境,我有这样的要求,我需要找到两个日期之间的延迟,即.. currentdate-date from database 我需要以dd:hh:mm的格式显示延迟.在参考了很多参考文献后,我发现如何转换为单个毫秒小时和分钟,但是我期待的是:如果结果是一些X毫秒,我需要以
我在开发过程中陷入困境,我有这样的要求,我需要找到两个日期之间的延迟,即.. currentdate-date from database

我需要以dd:hh:mm的格式显示延迟.在参考了很多参考文献后,我发现如何转换为单个毫秒小时和分钟,但是我期待的是:如果结果是一些X毫秒,我需要以适当的分钟和秒格式显示它

例如:2天:03分钟:46秒

这是我使用的代码:

Calendar calendar1 = Calendar.getInstance();
Calendar calendar2 = Calendar.getInstance();
calendar1.setTime(date);
calendar2.setTime(date1);
long milliseconds1 = calendar1.getTimeInMillis();
long milliseconds2 = calendar2.getTimeInMillis();
long diff = milliseconds1 - milliseconds2;
System.out.println("diff ::"+diff);
long diffSeconds = diff / 1000;
long diffMinutes = diff / (60 * 1000);
long diffHours = diff / (60 * 60 * 1000);
long diffDays = diff / (24 * 60 * 60 * 1000);

任何人都可以建议我做进一步的工作?
请指导我..

解决方法

您需要先计算diffDays

diffDays = diff / (24 * 60 * 60 * 1000);

然后计算剩余的毫秒数:

diff -= diffDays * 24 * 60 * 60 * 1000;

使用新差异来计算diffHours等等……

建议:使用这样的常量值:

private static final int SECOND = 1000;
private static final int MINUTE = 60 * SECOND;
// and so on

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读