【问题标题】:Get sunday for specified date [duplicate]获取指定日期的星期日[重复]
【发布时间】:2017-04-03 18:10:42
【问题描述】:

如何获取指定周的星期日日期?

例如,如果我的 DateTime 包含“2020 年 11 月 19 日”的日期,我如何才能获得 11 月 19 日这一周的星期日?该值为 11/13。

【问题讨论】:

  • 为什么值应该是11/13/2020?现在是星期五o.O

标签: c# datetime


【解决方案1】:
new DateTime(2020,11,19).AddDays(-(new DateTime(2020,11,19).DayOfWeek - DayOfWeek.Sunday))

【讨论】:

    【解决方案2】:

    这是你需要的

    DateTime d = new DateTime(2020,11,19);           
    int diff = d.DayOfWeek - DayOfWeek.Sunday;             
    DateTime lastSunday = d.AddDays(-diff);           
    Console.WriteLine(lastSunday);
    

    【讨论】:

    • 这将适用于星期天是一周的第一天。并非所有地方都是如此。在欧洲(至少是其中最大的一部分),星期日是一周的最后一天。在这种情况下,您必须检查相应的 CultureInfo,即一周的第一天,并且必须使用偏移量。
    猜你喜欢
    • 2018-06-12
    • 2017-11-07
    • 1970-01-01
    • 1970-01-01
    • 2015-08-31
    • 2017-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多