http://julianna-only.iteye.com/blog/549677
2、 已知年,第x周,获取这一周的周日与周六日期(一周起始时间为周日)
/**
* 计算某年某周的开始日期
* @param yearNum
* 格式 yyyy ,必须大于1900年度 小于9999年
* @param weekNum
* 1到52或者53
* @return 日期,格式为yyyy-MM-dd
*/
public static String getYearWeekFirstDay(int yearNum, int weekNum) {
Calendar cal = Calendar.getInstance();
cal.setFirstDayOfWeek(Calendar.SUNDAY); // 设置每周的第一天为星期日
cal.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);// 每周从周一开始
// 上面两句代码配合,才能实现,每年度的第一个周,是包含第一个星期一的那个周。
cal.setMinimalDaysInFirstWeek(7); // 设置每周最少为7天
cal.set(Calendar.YEAR, yearNum);
cal.set(Calendar.WEEK_OF_YEAR, weekNum);
// 分别取得当前日期的年、月、日
return formatDate(cal.getTime());
}
/**
* 计算某年某周的结束日期
* @param yearNum
* 格式 yyyy ,必须大于1900年度 小于9999年
* @param weekNum
* 1到52或者53
* @return 日期,格式为yyyy-MM-dd
*/
public static String getYearWeekEndDay(int yearNum, int weekNum) {
Calendar cal = Calendar.getInstance();
cal.setFirstDayOfWeek(Calendar.SUNDAY); // 设置每周的第一天为星期日
cal.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);// 每周从周日开始,最后一天是周六
cal.setMinimalDaysInFirstWeek(7); // 设置每周最少为7天
cal.set(Calendar.YEAR, yearNum);
cal.set(Calendar.WEEK_OF_YEAR, weekNum);
return formatDate(cal.getTime());
}
2、 已知年,第x周,获取这一周的周日与周六日期(一周起始时间为周日)
/**
* 计算某年某周的开始日期
* @param yearNum
* 格式 yyyy ,必须大于1900年度 小于9999年
* @param weekNum
* 1到52或者53
* @return 日期,格式为yyyy-MM-dd
*/
public static String getYearWeekFirstDay(int yearNum, int weekNum) {
Calendar cal = Calendar.getInstance();
cal.setFirstDayOfWeek(Calendar.SUNDAY); // 设置每周的第一天为星期日
cal.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);// 每周从周一开始
// 上面两句代码配合,才能实现,每年度的第一个周,是包含第一个星期一的那个周。
cal.setMinimalDaysInFirstWeek(7); // 设置每周最少为7天
cal.set(Calendar.YEAR, yearNum);
cal.set(Calendar.WEEK_OF_YEAR, weekNum);
// 分别取得当前日期的年、月、日
return formatDate(cal.getTime());
}
/**
* 计算某年某周的结束日期
* @param yearNum
* 格式 yyyy ,必须大于1900年度 小于9999年
* @param weekNum
* 1到52或者53
* @return 日期,格式为yyyy-MM-dd
*/
public static String getYearWeekEndDay(int yearNum, int weekNum) {
Calendar cal = Calendar.getInstance();
cal.setFirstDayOfWeek(Calendar.SUNDAY); // 设置每周的第一天为星期日
cal.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);// 每周从周日开始,最后一天是周六
cal.setMinimalDaysInFirstWeek(7); // 设置每周最少为7天
cal.set(Calendar.YEAR, yearNum);
cal.set(Calendar.WEEK_OF_YEAR, weekNum);
return formatDate(cal.getTime());
}