我有下面的代码获取的DateTime对象时周的C#日期时间
public static int WeeksInYear(DateTime date)
{
GregorianCalendar cal = new GregorianCalendar(GregorianCalendarTypes.Localized);
return cal.GetWeekOfYear(date, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
}
现在我给的日期1/1/2012至极应该返回1周函数给出了一年的weeknumber,但他回来了52周。我似乎无法弄清楚为什么。任何人有一个想法为什么?
试用这个 'cal.GetWeekOfYear(date,CalendarWeekRule.FirstFourDayWeek,DayOfWeek.Sunday)' – Raghuveer 2012-04-11 09:14:28
@RaghuveerGuthikonda:这只适用于这种特殊情况。例如, 2013年1月1日可能是一个星期六,它不会工作。这只是计算日历周的方式。 1/1/2012是在第52周,它应该在那里。 – basti 2012-04-12 07:28:35