|
@@ -3,11 +3,7 @@ package com.ym.mec.util.date;
|
|
|
import java.text.DateFormat;
|
|
|
import java.text.ParseException;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
-import java.util.Calendar;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.GregorianCalendar;
|
|
|
-import java.util.Locale;
|
|
|
-import java.util.TimeZone;
|
|
|
+import java.util.*;
|
|
|
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
|
|
@@ -19,6 +15,9 @@ import org.apache.commons.lang.StringUtils;
|
|
|
*/
|
|
|
public class DateUtil {
|
|
|
|
|
|
+
|
|
|
+ private static final String CHINESE_DATA_FORMAT = "yyyy年MM月dd日 HH:mm:ss";
|
|
|
+
|
|
|
public static final String DEFAULT_PATTERN = "yyyy-MM-dd";
|
|
|
|
|
|
/**
|
|
@@ -871,4 +870,34 @@ public class DateUtil {
|
|
|
// DateFormat df1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
System.out.println(daysBetween(df.parse("2017-07-20 10:07:42"), df.parse(df.format(new Date()))));
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取时间段内对应星期数的集合
|
|
|
+ * @param startTime 开始时间
|
|
|
+ * @param endTime 结束时间
|
|
|
+ * @param weekNum 周几
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public static List<Date> getWeekDays(Date startTime, Date endTime, int weekNum){
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ List<Date> dates=new ArrayList<>();
|
|
|
+ for(Date x = startTime; x.compareTo(endTime) <= 0;){
|
|
|
+ calendar.setTime(x);
|
|
|
+ calendar.add(Calendar.DATE, 1);
|
|
|
+ x = calendar.getTime();
|
|
|
+ if(calendar.get(Calendar.DAY_OF_WEEK) == weekNum){
|
|
|
+ dates.add(x);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return dates;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 时间转换为中文格式
|
|
|
+ * @param date
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public static String date2ChineseDate(Date date){
|
|
|
+ return new SimpleDateFormat(CHINESE_DATA_FORMAT).format(date);
|
|
|
+ }
|
|
|
}
|