首先得知道第一天是星期几:
可以把2000年1月1日作为一个标准,这天好像是周六。
用timespan计算今年第一天与那天的差的天数,除以7得到周数,如果整除说明今年第一天也是周六,余1是周天,余2是周1,以此类推,这样就行了。
语言:
DateTime dt = new DateTime(2010, 12, 30);
int index = 7;
if (dt.DayOfWeek > DayOfWeek.Sunday)
index = (int)dt.DayOfWeek;
int weekOfYear = (dt.DayOfYear - index) / 7 + 1;
if (dt.DayOfYear - index < 0)
weekOfYear = 52;
Response.Write(weekOfYear);
扩展资料:
根据中华人民共和国国家标准GB/T 7408-2005《数据元和交换格式信息交换日期和时间表示法》中4.3.2.2:一年中的第一个日历星期包括该年的第一个星期四,并且日历年的最后一个日历星期就是在下一个日历年的第一个日历星期之前的那个星期,日历星期数是其在该年中的顺序。
如果年按照52周计算,那么第一周是怎么定义的?
更正:元旦开始的第一个星期一开始的一周为政治经济上的第一周.
每年有365天,或366天,52周是364天,,那肯定是元旦前最后一个周日过后就算咯