ホームページ > バックエンド開発 > C++ > C# で 2 つの日付間の月の差を正確に計算するにはどうすればよいですか?

C# で 2 つの日付間の月の差を正確に計算するにはどうすればよいですか?

DDD
リリース: 2025-01-22 02:07:11
オリジナル
354 人が閲覧しました

How to Accurately Calculate the Difference in Months Between Two Dates in C#?

C# で 2 つの日付間の月の差を正確に計算する

C# には、月の差を計算するための VB.NET の

関数に直接相当する機能がありません。 月の長さが異なるため、単純に日差を 30 で割るのは不正確です。DateDiff()

より正確な方法には次の式が含まれます:

<code class="language-csharp">((date1.Year - date2.Year) * 12) + date1.Month - date2.Month</code>
ログイン後にコピー
この計算では日の要素は無視されます。 たとえば、2011 年 1 月 1 日と 2010 年 12 月 31 日の差は 1 です。肯定的な結果は、

date1 より後であることを示します。否定的な結果はその逆を示します。date2

おおよその平均月数を確認するには、次を使用します:

<code class="language-csharp">date1.Subtract(date2).Days / (365.25 / 12)</code>
ログイン後にコピー
簡単にするために、これは年間平均 365.25 日を使用します。 精度を高めるには、より正確な年間約 365.2425 日の平均を使用することを検討してください。 特に広い日付範囲を処理するアプリケーションの場合は、常に結果を検証してください。

以上がC# で 2 つの日付間の月の差を正確に計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート