ChenJiaHe
2020-11-25 7b07dc50f2696954ed7ab2e1c30b40d7c45ef0c5
src/main/java/com/hx/util/DateUtil.java
@@ -233,6 +233,29 @@
        return sdf.parse(str);
    }
    /**字符串转成时间yyyy-MM-dd HH:mm:ss*/
    public static Date parseString_1(String str)
    {
        try{
            return  Format_3.parse(str);
        }catch (Exception e)
        {
            return null;
        }
    }
    /**字符串转成时间yyyy-MM-dd*/
    public static Date parseString_2(String str)
    {
        try{
            return Format_4.parse(str);
        }catch (Exception e)
        {
            return null;
        }
    }
    /**时间上分钟叠加
     * @Author: ChenJiaHe
     * @param dateTime 时间
@@ -269,6 +292,19 @@
        Calendar c = Calendar.getInstance();
        c.setTime(dateTime);
        c.add(Calendar.DATE, dayNum);
        return c.getTime();
    }
    /**时间上年数叠加
     * @Author: ChenJiaHe
     * @param dateTime 时间
     * @param dayNum 天数
     * @return
     */
    public static Date addYear(Date dateTime,int dayNum){
        Calendar c = Calendar.getInstance();
        c.setTime(dateTime);
        c.add(Calendar.YEAR, dayNum);
        return c.getTime();
    }
@@ -331,6 +367,42 @@
        return weekDays[w];
    }
    /**
     * endTime比startTime多的天数
     * @param startTime 最小时间
     * @param endTime 最大时间
     * @return
     */
    public static Integer differDay(Date startTime,Date endTime){
        Calendar cal1 = Calendar.getInstance();
        cal1.setTime(startTime);
        Calendar cal2 = Calendar.getInstance();
        cal2.setTime(endTime);
        int day1= cal1.get(Calendar.DAY_OF_YEAR);
        int day2 = cal2.get(Calendar.DAY_OF_YEAR);
        int year1 = cal1.get(Calendar.YEAR);
        int year2 = cal2.get(Calendar.YEAR);
        if(year1 != year2) { //同一年
            int timeDistance = 0 ;
            for(int i = year1 ; i < year2 ; i ++) {
                if(i%4==0 && i%100!=0 || i%400==0) {//闰年
                    timeDistance += 366;
                }
                else {//不是闰年
                    timeDistance += 365;
                }
            }
            return timeDistance + (day2-day1) ;
        }
        else { //不同年
            System.out.println("判断day2 - day1 : " + (day2-day1));
            return day2-day1;
        }
    }
    /**判断两个时间是不是同一天*/
    public static boolean timeEqual(Date startTime,Date endTime){
       if(startTime == null || endTime==null){
@@ -343,4 +415,24 @@
       return status;
    }
    /**把秒转换成X天X时X分X秒*/
    public static String getChineseStr(Integer second)
    {
        int day = 24 * 60 * 60;
        int hour = 60 * 60;
        int min = 60;
        int dayNum = second / day;
        int hourNum = second % day / hour;
        int minNum = second % day % hour / min;
        second = second % day % hour % min;
        String str = dayNum > 0 ? dayNum + "天" : "";
        str += hourNum > 0 ? hourNum + "时" : "";
        str += minNum > 0 ? minNum + "分" : "";
        str += second + "秒";
        return str;
    }
}