Java显示两个时间相差几天几小时几分几秒

jopen 5年前

/**       * @param startTime 开始时间       * @param endTime 截止时间       * @param format 格式化字符串       * @return 相差时间字符串       * @作者 yuanxj       * @创建日期 2016-1-4       * @创建时间 上午10:19:31       * @描述 —— 计算两个时间相差几天几小时几分几秒       */   public static String dateDiff(String startTime, String endTime, String format) {    // 按照传入的格式生成一个simpledateformate对象    SimpleDateFormat sd = new SimpleDateFormat(format);    long nd = 1000 * 24 * 60 * 60;// 一天的毫秒数    long nh = 1000 * 60 * 60;// 一小时的毫秒数    long nm = 1000 * 60;// 一分钟的毫秒数    long ns = 1000;// 一秒钟的毫秒数    long diff;    try {     // 获得两个时间的毫秒时间差异     diff = sd.parse(endTime).getTime() - sd.parse(startTime).getTime();     long day = diff / nd;// 计算差多少天     long hour = diff % nd / nh;// 计算差多少小时     long min = diff % nd % nh / nm;// 计算差多少分钟     long sec = diff % nd % nh % nm / ns;// 计算差多少秒     return day + "天" + hour + "时" + min + "分" + sec + "秒";    } catch (ParseException e) {     return null;    }   }


来自: http://my.oschina.net/u/238296/blog/596930