Java顯示兩個時間相差幾天幾小時幾分幾秒

jopen 8年前發布 | 14K 次閱讀 Java開發

/**
     * @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

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!