首頁 >後端開發 >C++ >如何在 C# 中獲取一週的開始(週日或週一)?

如何在 C# 中獲取一週的開始(週日或週一)?

DDD
DDD原創
2025-01-22 14:06:12382瀏覽

How to Get the Start of the Week (Sunday or Monday) in C#?

用 C# 計算一週的開始日期

本文示範如何使用當前日期和時間在 C# 中輕鬆找到一週的開始(星期日或星期一)。 我們將使用簡潔的擴展方法來完成此任務。

擴充方法實作:

<code class="language-csharp">public static class DateTimeExtensions
{
    public static DateTime WeekStart(this DateTime dt, DayOfWeek firstDayOfWeek)
    {
        int dayDifference = (7 + (dt.DayOfWeek - firstDayOfWeek)) % 7;
        return dt.AddDays(-dayDifference).Date;
    }
}</code>

使用範例:

WeekStart 擴充方法簡化了取得一週開始日期的流程。使用方法如下:

  • 星期一為第一天:
<code class="language-csharp">DateTime mondayStart = DateTime.Now.WeekStart(DayOfWeek.Monday);</code>
  • 週日為第一天:
<code class="language-csharp">DateTime sundayStart = DateTime.Now.WeekStart(DayOfWeek.Sunday);</code>

這種方法提供了一種乾淨有效的方式來確定一周的開始,無論您將其定義為星期日還是星期一。

以上是如何在 C# 中獲取一週的開始(週日或週一)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn