现在的位置: 首页 > 综合 > 正文

根据不同日期计算天数差

2018年02月10日 ⁄ 综合 ⁄ 共 973字 ⁄ 字号 评论关闭

            Calendar cal1 = getCalendarFromDate(mStartDate);
            long startTime = cal1.getTimeInMillis();
            Calendar cal2 = getCalendarFromDate(mEndDate);
            long endTime = cal2.getTimeInMillis();
            

            int numberOfDays = (int)(endTime - startTime)/(24 * 60 * 60 * 1000);

   /**
     * @param date format is 2012-9-18
     * @return Calendar value is after set date's value
     */
    private Calendar getCalendarFromDate(final String date) {
        int year = 0;
        int month = 0;
        int day = 0;
        try {
            String[] array = date.split("-");
            int[] arrayInt = new int[array.length];
            for (int i = 0; i < array.length; i++) {
                arrayInt[i] = Integer.parseInt(array[i]);
                if(i == 0) {
                    year = arrayInt[0];
                } else if(i == 1){
                    month = arrayInt[1];
                } else if(i == 2){
                    day = arrayInt[2];
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        
        
        Calendar cal = Calendar.getInstance();
        if(year > 0 && month >= 0 && day >= 0) {
            cal.set(year, month, day);
        }
        
        return cal;
    }

PS:month 取值范围为0-11

抱歉!评论已关闭.