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 脈凌網絡 閱讀(2065) 評論(1)  編輯  收藏

          評論

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

          不錯

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


          網站導航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 高密市| 长子县| 平陆县| 扶沟县| 福建省| 会泽县| 柳林县| 木兰县| 横峰县| 高邮市| 旺苍县| 揭西县| 贡觉县| 喜德县| 钟祥市| 苍溪县| 泗水县| 灌南县| 乌鲁木齐市| 尉氏县| 东山县| 宜川县| 灵宝市| 时尚| 额敏县| 苍山县| 大荔县| 栖霞市| 马尔康县| 杭州市| 公安县| 宣威市| 中阳县| 沂南县| 拉萨市| 汽车| 拜泉县| 建瓯市| 成武县| 弋阳县| 靖安县|