C# 提供了多種方法來識別一週的第一天,無論是星期日還是星期一。 一項常見任務涉及僅根據當前日期和時間來確定這一點。
一個靈活的解決方案是建立一個自訂擴充方法,讓您指定所需的開始日期。此方法使用模運算來計算當前日期與指定開始日期之間的差異:
<code class="language-csharp">public static class DateTimeExtensions { public static DateTime WeekStart(this DateTime dt, DayOfWeek startOfWeek) { int offset = (7 + (dt.DayOfWeek - startOfWeek)) % 7; return dt.AddDays(-offset).Date; } }</code>
這個擴充方法的使用方式如下:
<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中文網其他相關文章!