我确定之前已经以我找不到的其他方式询问过这个问题,所以如果我是这样的话,我很抱歉重复。

我正在尝试计算两个日期之间的差异,然后以天、分和秒为单位显示差异;类似于“3天23分59秒”

很容易,我敢肯定,但我是一名 C# 实践者,所以我很难在这个问题上开箱即用。

提前致谢!

最佳答案

Date start = new Date(2010, 10, 13);
Date end   = new Date(2010, 10, 18);

long diffInMillis = end.getTime() - start.getTime();

long diffInDays  = diffInMillis/1000/86400;
long diffInHours = (diffInMillis/1000 - 86400*diffInDays) / 3600;
long diffInMins  = (diffInMillis/1000 - 86400*diffInDays - 3600*diffInHours) / 60;
long diffInSecs  = (diffInMillis/1000 - 86400*diffInDays - 3600*diffInHours - 60*diffInMins);

关于Java 格式日期之间的详细差异,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3951988/

10-10 13:17