public static bool CalcWeekDay (int año, la semana int, DateTime a cabo en primer lugar, hacia fuera DateTime pasado) { primera = DateTime.MinValue; última = DateTime.MinValue; //年份超限 si es falso (año <1700 || años> 9999) return; //周数错误 si es falso (semana <1 || semana> 53) de retorno; //指定年范围 DateTime DateTime nueva start = (año, 1, 1); DateTime final = new DateTime (año, 12, 31); int startWeekDay = (int) start.DayOfWeek-1; //周的起始日期 primera start.AddDays = ((7 - startWeekDay) + (semana - 2) * 7); últimos = first.AddDays (6); SI (. Last.Year - == año 1) { pasado a Convert.ToDateTime = (año + "-12 a 31"); } // End Fecha de fin de año de retorno (Última <= End); }
llamar a:
resultado bool = CalcWeekDay (2020, 53, primero, hacia fuera pasado);
Devuelve la fecha correspondiente al intervalo de fechas.
public static bool CalcWeekDay (int año, la semana int, DateTime a cabo en primer lugar, hacia fuera DateTime pasado) {primera = DateTime.MinValue; última = DateTime.MinValue; //年份超限si es falso (año <1700 || años> 9999) return; //周数错误si es falso (semana <1 || semana> 53) de retorno; //指定年范围DateTime DateTime nueva start = (año, 1, 1); DateTime final = new DateTime (año, 12, 31); int startWeekDay = (int) start.DayOfWeek-1; //周的起始日期primera start.AddDays = ((7 - startWeekDay) + (semana - 2) * 7); últimos = first.AddDays (6);
si (last.Year - año == 1) {= última Convert.ToDateTime (año + "-12 a 31"); } //结束日期跨年retorno (última <= fin);