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#如何获取上周六日期的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Windows Mobile 上的 C# 文件中获取修改日期?

如何从当前日期找到本周末和下周末?

presto - 获取最近一个星期六的日期

如何在没有周末的情况下获取日期范围之间的所有日期?

如何在 C# 中使用其 id 获取输入类型 = 日期的值

如何从日期时间 C# 中仅获取时间 [关闭]