如何计算前一周';s给定日期的最后一个日期

本文关键字:日期 最后一个 何计算 计算 一周 | 更新日期: 2023-09-27 18:22:44

还有其他帖子用于计算上周的最后日期,但所有帖子都考虑了当前日期。。。DateTime.Now

在这里,我想根据某个给定的日期来计算上周的最后一个日期。

假设周日为本周的开始日。

有什么方法可以计算上周的最后日期吗?例如,假设给定的日期是20-Nov-2015是星期五。那么上周的最后一天将是14-Nov-2015

我想,即使日期是15-Nov-2015,那么它前一周的最后一个日期也应该是14-Nov-2015

简单地说,如何根据给定的日期计算上周的周六日期?

如何计算前一周';s给定日期的最后一个日期

你可以用一个简单的循环来完成:

string yourInput = "2015-11-20"; 
DateTime reference = DateTime.ParseExact(yourInput , "yyyy-MM-dd", CultureInfo.InvariantCulture);
DateTime lastSaturday  = reference ;
do 
{
    lastSaturday = lastSaturday.AddDays(-1) ; 
}
while(lastSaturday.DayOfWeek != DayOfWeek.Saturday); 

Console.WriteLine(lastSaturday.ToString("dd-MMM-yyyy")) ;
// Should print 14-Nov-2015