C#获取指定日期时间所在周的第一天

c# 日期 1055 1055
分 类: Dotnet - 日期
来 源:
地 址:
sam 2024-05-03 16:12:22

代码

        /// <summary>
        /// 获取一周的第一天
        /// </summary>
        /// <param name="date"></param>
        /// <returns></returns>
        public static DateTime FirstDateOfWeek(DateTime date)
        {
            if (date.DayOfWeek == 0)
            {
                return date.AddDays(-6);
            }
            else if (date.DayOfWeek > DayOfWeek.Monday)
            {
                return date.AddDays(1 - (int)date.DayOfWeek);
            }
            else
            {
                return date;
            }
        }

功能说明

1、一周有7天,星期日,是一周的第一天

2、如果DayOfWeek=0 表示是星期天,使用AddDays(-6),则为周一

3、如果DayOfWeek 大于周一,则使用 1- 当前天数,向前移,则找到周一

4、如果刚好今天的日期是周一,则返回当前的日期


回帖
  • 消灭零回复
相关代码片段