编程学习资讯网

java计算两个日期中间的时间

发布时间:2017-04-06 21:25:18   来源:本站编辑   浏览次数:

java计算两个日期中间的时间

其中在数据库中有一个字段为datetime类型,想要计算两个日期之间过了多少天 多少小时 多少分钟。

思路为把时间换算为毫秒(与协调世界时 1970 年 1 月 1 日午夜之间的时间差(以毫秒为单位测量)。然后利用毫秒的加减计算。

计算如下:

?
1
2
3
4
5
6
7
8
9
10
11
public static String getDays(Date date){
    Calendar cal=Calendar.getInstance();
    cal.setTime(date);
    long oldTime=cal.getTimeInMillis();
    long nowTime=System.currentTimeMillis();
    long days=(nowTime-oldTime)/(1000*60*60*24);//天数
    long hours=((nowTime-oldTime)%(1000*60*60*24))/(1000*60*60);//小时数
    long minutes=(((nowTime-oldTime)%(1000*60*60*24))%(1000*60*60))/(1000*60);//分钟数
    long seconds=((((nowTime-oldTime)%(1000*60*60*24))%(1000*60*60))%(1000*60))/1000;//秒数
    return days+"天"+hours+"小时"+minutes+"分钟"+seconds+"秒";
  }