C#如何获取上周六日期

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#如何获取上周六日期相关的知识,希望对你有一定的参考价值。

参考技术A 如果将周日作为每周的第一天:
DateTime now = DateTime.Now;
DateTime result = now.AddDays(-(double)now.DayOfWeek - 1.0);
Console.WriteLine(result);

如果将周一作为每周的第一天:
DateTime now = DateTime.Now;
DateTime result = now.AddDays(now.DayOfWeek == DayOfWeek.Sunday ? -8.0 : -(double)now.DayOfWeek - 1.0);
Console.WriteLine(result);
参考技术B 主要就是用DateTime.DayOfWeek知道今天是星期几,然后再算上周六的日期。
写一个方法:
public DateTime GetLastSaturday()

DateTime time = DateTime.Now;
if (time.DayOfWeek == DayOfWeek.Sunday)

time = time.AddDays(-2);

else
time = time.AddDays(-1);
while (time.DayOfWeek != DayOfWeek.Saturday)

time = time.AddDays(-1);

return time;
本回答被提问者采纳
参考技术C 楼上二位正解

以上是关于C#如何获取上周六日期的主要内容,如果未能解决你的问题,请参考以下文章