C# ------ 实现下个月若是周六则提前一天,是周日则提前两天(DayOfWeek )

2021/6/22 9:56:54

本文主要是介绍C# ------ 实现下个月若是周六则提前一天,是周日则提前两天(DayOfWeek ),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

实现如图:若当前回访时间为  6 月 21 ,则下次回访时间为 7月21,其中如果下次回访时间为周六则提前一天,是周日则提前两天

下图为测试,一月到二月,追加一个月(AddMonths)时 ,AddMonths函数判断当前日如果大于或等于下个月的最大一天,则为最大一天

 

 

 具体实现:

AddMonths 用于追加月份
AddDays 用于追加日,可为负
DayOfWeek 用于判断周几,返回的为英文

    DateTime d = DateTime.Now;
    DateTime d2 = d.AddMonths(1);
    DateTime d3 = d;

         if(d2.DayOfWeek.ToString() == "Sunday")
            {
                d3 = d2.AddDays(Convert.ToDouble(-2));
            }
            else if(d2.DayOfWeek.ToString() == "Saturday")
            {
                d3 = d2.AddDays(Convert.ToDouble(-1));
            }
            else
            {
                d3 = d2;
            }

            tbJobUser_User_ReturnDate.Value = d3.ToString("yyyy-MM-dd");

小提示:

//一月、三月、五月、七月、八月、十月、十二月为31天 二月非闰年为28天,在闰年为29天,闰年指年份能被4整除的年,如2000年能被4整除,为闰年 四月、六月、九月、十一月为30天
 //判断周几的算法
  iWeek = (iDay + 2 * iMonth + 3 * (iMonth + 1) / 5 + iYear + iYear / 4 - iYear / 100 + iYear / 400) % 7;

 

···



这篇关于C# ------ 实现下个月若是周六则提前一天,是周日则提前两天(DayOfWeek )的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程