java 获取距离结束时间几天几小时

public String dateDiff(Date startTime, Date endTime) {
    //按照传入的格式生成一个simpledateformate对象
    SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    long nd = 1000 * 24 * 60 * 60;//一天的毫秒数
    long nh = 1000 * 60 * 60;//一小时的毫秒数
    long nm = 1000 * 60;//一分钟的毫秒数
    long ns = 1000;//一秒钟的毫秒数long diff;
    //获得两个时间的毫秒时间差异
    long diff;
    //diff = sd.parse(endTime).getTime() - sd.parse(startTime).getTime();
    diff = endTime.getTime() - startTime.getTime();
    String day = diff / nd +"";//计算差多少天
    String hour = diff % nd / nh +"";//计算差多少小时
    String min = diff % nd % nh / nm +"";//计算差多少分钟
    String sec = diff % nd % nh % nm / ns +"";//计算差多少秒//输出结果
    return "距报名结束:" + day + "天" + hour + "小时" + min + "分钟" + sec + "秒";

}
原文地址:https://www.cnblogs.com/hzcya1995/p/13300635.html