62,268
社区成员
发帖
与我相关
我的任务
分享
/// <summary>
/// 取指定日期是一年中的第几周
/// </summary>
/// <param name="dtime">给定的日期</param>
/// <returns>数字 一年中的第几周</returns>
public static int weekofyear(DateTime dtime)
{
int weeknum = 0;
DateTime tmpdate = DateTime.Parse(dtime.Year.ToString() + "/1" + "/1");
DayOfWeek firstweek = tmpdate.DayOfWeek;
if ((int)firstweek > dtime.DayOfYear)
{
return 52;
}
for (int i = (int)firstweek + 1; i <= dtime.DayOfYear; i = i + 7)
{
weeknum = weeknum + 1;
}
return weeknum;
}
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);