public static List<String> getMatchDateStrs(String[] weekdays, String start, String end)
throws Exception
{
List<String> list = new ArrayList<String>();
String[] weeks = {"星期一","星期二","星期三","星期四","星期五","星期六","星期日"};
String datestr = null;
SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat weekdayformat = new SimpleDateFormat("E");
Calendar calendar = Calendar.getInstance();
calendar.setTime(dateformat.parse(start));
calendar.setTimeZone(TimeZone.getTimeZone("GMT+08:00"));
datestr = dateformat.format(calendar.getTime());
while (datestr.compareToIgnoreCase(end)<1)
{
for (int i = 0; i < weekdays.length; i++)
{
if (!"".equals(weekdays[i]))
{
int temp = Integer.parseInt(weekdays[i]);
if (weeks[temp-1].equals(weekdayformat.format(calendar.getTime())))
{
list.add(datestr);
}
}
}
calendar.add(Calendar.DAY_OF_MONTH, 1);
datestr = dateformat.format(calendar.getTime());
}
return list;
}