前两天计算获取2019有多少周,现有的代码算出来有54周,看的我一脸懵逼。
以周一为每周的第一天
public static int GetYearWeekCount(int year)
{
var dateTime = DateTime.Parse(year + "-01-01");
var firstDayOfWeek = Convert.ToInt32(dateTime.DayOfWeek);//得到该年的第一天是周几 [周日、周一、周二...周六]
if (firstDayOfWeek == 1)
{
var countDay = dateTime.AddYears(1).AddDays(-1).DayOfYear;
var countWeek = countDay / 7 + 1;
return countWeek;
}
else
{
//转换周日为最后一天
if (firstDayOfWeek == 0)
{
firstDayOfWeek = 7;
}
var countDay = dateTime.AddYears(1).AddDays(-1).DayOfYear;
countDay -= (8 - firstDayOfWeek);
var countWeek = countDay / 7 + 2;
return countWeek;
}
}
本文介绍了一种计算特定年份总周数的方法,通过分析一年的第一天是星期几,以及该年的总天数来确定全年共有多少周。代码示例使用C#语言实现。
297

被折叠的 条评论
为什么被折叠?



