public static Date localDateToDate(LocalDate it) {
LocalDate date = LocalDate.of(it.getYear(), it.getMonthValue(), it.getDayOfMonth());
ZoneId zone = ZoneId.systemDefault();
Instant instant = date.atStartOfDay().atZone(zone).toInstant();
java.util.Date da = Date.from(instant);
return da;
}
public static List<LocalDate> completionDate(LocalDate startDate, LocalDate endDate) {
List<LocalDate> localDateList = new ArrayList<>();
//开始时间必须小于结束时间
if (startDate.isAfter(endDate)) {
return null;
}
while (startDate.isBefore(endDate)) {
localDateList.add(startDate);
startDate = startDate.plusDays(1);
}
localDateList.add(endDate);
return localDateList;
}
补全日期 并把 LocalDate集合 转成 Date集合
public static List<Date> localDateListToDateList(Date startDate, Date endDate) {
List<Date> resDate = new ArrayList<>();
LocalDate localStartDate = CommomUtil.dateToLocalDate(startDate);
LocalDate localEndDate = CommomUtil.dateToLocalDate(endDate);
List<LocalDate> dateList = CommomUtil.completionDate(localStartDate, localEndDate);//日期区间
if (dateList != null && dateList.size() > 0) {
for (LocalDate it : dateList) {
Date date = CommomUtil.strToDate(it.toString());
resDate.add(date);
}
}
return resDate;
}
将短时间格式字符串转换为时间 yyyy-MM-dd
public static Date strToDate(String strDate) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
ParsePosition pos = new ParsePosition(0);
Date strtodate = formatter.parse(strDate, pos);
return strtodate;
}