Java中計算兩個日期相差幾天

          public class Test {
          public void 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;//計算差多少秒
          //輸出結果
          System.out.println("時間相差:"+day+"天"+hour+"小時"+min+"分鐘"+sec+"秒。");
          } catch (ParseException e) {
          e.printStackTrace();
          }
          }

          public static void main(String[] args) {
          new Test().dateDiff(new SimpleDateFormat("yyyy-MM-dd").format(new Date()), "2011-4-28", "yyyy-MM-dd");
          }
          }



          posted on 2012-02-14 21:31 脈凌網絡 閱讀(2062) 評論(1)  編輯  收藏

          評論

          # re: Java中計算兩個日期相差幾天 2012-02-15 11:35 旭日  回復  更多評論   

          不錯

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 靖州| 新密市| 英德市| 叙永县| 汕尾市| 明溪县| 汨罗市| 武定县| 保德县| 富锦市| 桂阳县| 古丈县| 淮滨县| 林州市| 龙口市| 平度市| 玉山县| 武邑县| 呼伦贝尔市| 绿春县| 连州市| 绥滨县| 措美县| 沁阳市| 建水县| 饶河县| 民丰县| 尤溪县| 山丹县| 凌源市| 工布江达县| 光泽县| 汝南县| 石阡县| 新河县| 大安市| 海阳市| 富阳市| 分宜县| 宁海县| 宜兴市|