获取给定日期的正确星期数
我在Google上搜索了很多,找到了很多解决方案,但是没有一个给我正确的2012-12-31周数。甚至是MSDN上的示例(链接)失败了。 2012-12-31是星期一,因此应该是第1周,但是我尝试的每种方法都给了我53。这是我尝试过的一些方法: 从MDSN库: DateTimeFormatInfo dfi = DateTimeFormatInfo.CurrentInfo; Calendar cal = dfi.Calendar; return cal.GetWeekOfYear(date, dfi.CalendarWeekRule, dfi.FirstDayOfWeek); 解决方案2: return new GregorianCalendar(GregorianCalendarTypes.Localized).GetWeekOfYear(date, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday); 解决方案3: CultureInfo ciCurr = CultureInfo.CurrentCulture; int weekNum = ciCurr.Calendar.GetWeekOfYear(dtPassed, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday); return weekNum; 更新资料 当日期为2012-12-31时,以下方法实际上返回1。换句话说,我的问题是我的方法未遵循ISO-8601标准。 // This presumes that weeks start with Monday. // Week 1 is the 1st …