package com.byx.oa.workflow.process.qingjia;
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 GetAllDateUtil {
public static List<String> getAllLeaveDates(String startDate, String endDate) {
List<String> days = new ArrayList<String>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
Date start = sdf.parse(startDate);
Date end = sdf.parse(endDate);
Calendar tempStart = Calendar.getInstance();
tempStart.setTime(start);
//开始日期加一天(若包含首尾,将开始日期加0,结束日期加1即可)
tempStart.add(Calendar.DATE, 1);
Calendar tempEnd = Calendar.getInstance();
tempEnd.setTime(end);
//结束日期不变
tempEnd.add(Calendar.DATE, 0);
//开始日期在结束日期之前的就add进days集合
while (tempStart.before(tempEnd)) {
days.add(sdf.format(tempStart.getTime()));
tempStart.add(Calendar.DAY_OF_YEAR, 1);
}
} catch (ParseException e) {
e.printStackTrace();
}
return days;
}
}
获取两个日期首尾之间的所有日期(不包含首尾日期)
最新推荐文章于 2024-05-21 08:35:58 发布