根据年,月,周,计算具体的某一天(星期一)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据年,月,周,计算具体的某一天(星期一)相关的知识,希望对你有一定的参考价值。

#region old 根据年,月,周,计算具体的某一天

/// <summary>
/// old 根据年,月,周,计算具体的某一天
/// </summary>
public object showWeekDate(int year, int month)
{
List<object> lists = new List<object>();
string str = "";
//当前月第一天
DateTime weekStart = new DateTime(year, month, 1);
//该月的最后一天
DateTime monEnd = weekStart.AddMonths(1).AddDays(-1);
int i = 1;
//当前月第一天是星期几
int dayOfWeek = Convert.ToInt32(weekStart.DayOfWeek.ToString("d"));
//该月第一周结束日期
DateTime weekEnd = dayOfWeek == 0 ? weekStart : weekStart.AddDays(7 - dayOfWeek);
str += "第" + i + "周起始日期: " + weekStart.ToShortDateString() + " 结束日期: " + weekEnd.ToShortDateString() + "\n";
var dateSpanWeek1 = new { StartDate = weekStart.ToShortDateString(), EndDate = weekEnd.ToShortDateString() };
lists.Add(dateSpanWeek1);
//当日期小于或等于该月的最后一天
while (weekEnd.AddDays(1) <= monEnd)
{
i++;
//该周的开始时间
weekStart = weekEnd.AddDays(1);
//该周结束时间
weekEnd = weekEnd.AddDays(7) > monEnd ? monEnd : weekEnd.AddDays(7);
str += "第" + i + "周起始日期: " + weekStart.ToShortDateString() + " 结束日期: " + weekEnd.ToShortDateString() + "\n";
var dateSpanWeek2 = new { StartDate = weekStart.ToShortDateString(), EndDate = weekEnd.ToShortDateString() };
lists.Add(dateSpanWeek2);
}
str += year + "年" + month + "月共有" + i + "周\n";
return lists;
}

#endregion old 根据年,月,周,计算具体的某一天

以上是关于根据年,月,周,计算具体的某一天(星期一)的主要内容,如果未能解决你的问题,请参考以下文章

如何计算某一天是星期几?

如何将星期天设置为excel对周计算的第一天。

计算任意一天是星期几

pandas 日期数据处理大全,按照年、季度、月、周、日筛选数据

怎么取两个日期之间的周数

求出某一天是那一年的第几星期,比如2008年1月8日?