zoukankan      html  css  js  c++  java
  • 两个日期之间相差的天数

    输入两个字符串格式的日期,计算两日期之间,相差的天数

    限制条件:输入的日期字符串,格式必须为 yyyy-MM-dd

    方法一:

     1     /** 
     2      *两个日期(字符串 格式:yyyy-MM-dd)的间隔天数
     3      *
     4      * @param smdate 较小的时间 
     5      * @param bdate  较大的时间 
     6      * @return 相差天数 
     7     */  
     8     public static int daysBetween(String smdate,String bdate) throws ParseException{  
     9         SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");  
    10         Calendar cal = Calendar.getInstance();    
    11         cal.setTime(sdf.parse(smdate));    
    12         long time1 = cal.getTimeInMillis();                 
    13         cal.setTime(sdf.parse(bdate));    
    14         long time2 = cal.getTimeInMillis();         
    15         long between_days=(time2-time1)/(1000*3600*24);  
    16             
    17        return Integer.parseInt(String.valueOf(between_days));     
    18     } 

    方法二:再加限制,只能计算用一年时间区间内容的。跨年计算将产生负值

     1     /**
     2      * 两个日期字符串 的时间差(天数)
     3      *             【限制条件:只能计算,同一年的时间区间】
     4      * 
     5      * @param @param startTime
     6      *                         格式:yyyy-MM-dd
     7      * @param @param endTime
     8      *                         格式:yyyy-MM-dd
     9      * @param @return    设定文件 
    10      * @return int    返回类型 
    11      *
    12      */
    13     public static int daysBetween(String startTime, String endTime) throws ParseException{
    14 
    15         Calendar aCalendar = Calendar.getInstance();
    16         Date startDate = null; 
    17         Date endDate = null; 
    18         
    19         try {  
    20             startDate = new SimpleDateFormat("yy-MM-dd").parse(startTime);  
    21             endDate = new SimpleDateFormat("yy-MM-dd").parse(endTime);  
    22         } catch (ParseException e) {  
    23             e.printStackTrace();  
    24         }  
    25         
    26         aCalendar.setTime(startDate);
    27 
    28         int startDay = aCalendar.get(Calendar.DAY_OF_YEAR);
    29 
    30         aCalendar.setTime(endDate);
    31 
    32         int endDay = aCalendar.get(Calendar.DAY_OF_YEAR);
    33 
    34         return endDay - startDay;
    35 
    36      }
  • 相关阅读:
    linux就该这么学.pdf
    linux中shell编辑小技巧
    相关功能分享
    现代操作系统第三版高清.pdf中文版免费下载
    linux高性能服务器编程pdf免费下载
    git每次更新都需要输入账号密码,如何解决?
    Python 面向对象
    模块和包
    Python常用模块(collections、 time、 random、 os 、sys、序列化模块)
    内置函数和匿名函数(lambda)
  • 原文地址:https://www.cnblogs.com/bridgestone29-08/p/6915471.html
Copyright © 2011-2022 走看看