yujian
2019-01-19 a9129b96fa14c77df166f367be1d8220c8f9d0b7
utils/src/main/java/org/yeshi/utils/DateUtil.java
@@ -2,8 +2,10 @@
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
public class DateUtil {
@@ -92,12 +94,48 @@
         return false;
      }
   }
   /**
    * 验证是否属于同一天
    *
    * @param Date1
    * @param Date2
    * @return
    */
   public static boolean isSameMonth(Date date1, Date date2) {
      if (date1 != null && date2 != null) {
         Calendar cal1 = Calendar.getInstance();
         cal1.setTime(date1);
         Calendar cal2 = Calendar.getInstance();
         cal2.setTime(date2);
         return isSameMonth(cal1, cal2);
      } else {
         return false;
      }
   }
   /**
    * 验证是否属于同年同月
    *
    * @param cal1
    * @param cal2
    * @return
    */
   public static boolean isSameMonth(Calendar cal1, Calendar cal2) {
      if (cal1 != null && cal2 != null) {
         return cal1.get(0) == cal2.get(0) && cal1.get(1) == cal2.get(1) && cal1.get(6) == cal2.get(6);
      } else {
         return false;
      }
   }
   /**
    * 指定日期加上天数后的日期
    * 
    * @param num
    *            为增加的天数
    *            增加的天数
    * @param nowDate
    *            创建时间
    * @return
@@ -113,4 +151,55 @@
      
      return format.format(ca.getTime());
   }
   /**
    * 指定日期减去天数后的日期
    *
    * @param num
    *            减去的天数
    * @param nowDate
    *            创建时间
    * @return
    * @throws ParseException
    */
   public static String reduceDay(int num, String nowDate) throws ParseException {
      SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
      Date currdate = format.parse(nowDate);
      Calendar ca = Calendar.getInstance();
      ca.setTime(currdate);
      ca.add(Calendar.DATE, -num); // 日期减 如果不够减会将月变动
      return format.format(ca.getTime());
   }
   /**
    * 返回中间日期
    * @param startTime
    * @param endTime
    * @return
    * @throws Exception
    */
   public static List<String> dayFactory(String startTime, String endTime) throws Exception {
      List<String> listDate = new ArrayList<String>();
      String plusDay = "";
      for (int i = 0; i < 1000; i++) {
         if (i == 0) {
            plusDay = startTime;
         } else {
            plusDay = DateUtil.plusDay(i, startTime);
         }
         listDate.add(plusDay);
         if (plusDay.equals(endTime)) {
            break; // 时间结束
         }
      }
      return listDate;
   }
}