C# で月次の日付の差を計算する方法
2 つの日付間の月の差を決定することは、さまざまなプログラミング シナリオで非常に便利なタスクです。ただし、VB の DateDiff() メソッドとは異なり、C# はこの機能を直接提供しません。この記事では、月次の日付間の差異を計算する別の方法を検討し、TimeSpan の使用の制限に対処します。
1つの方法は、年と月の差に基づいて月の差を計算することです。例:
<code class="language-c#">int monthsDiff = ((date1.Year - date2.Year) * 12) + date1.Month - date2.Month;</code>
この数式は、日付は関係なく、date1 > date2 の場合は正、date2 > date1 の場合は結果が負であることを前提としています。
「平均月」を表す近似値を使用したい場合は、次の方法を使用できます:
<code class="language-c#">double averageMonthsDiff = date1.Subtract(date2).Days / (365.25 / 12);</code>
この式は、日数の差を年間の平均日数 (365.25) で割ってから 12 で割ることにより、おおよその月数を計算します。
単体テストの場合、アプリケーションが処理できるように設計されている最も広い日付範囲を定義し、それに応じて計算を検証する必要があることに注意してください。
以上がC# で 2 つの日付間の月の差を計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。