「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > C#の2つの日付の差を効率的に計算する方法は?

C#の2つの日付の差を効率的に計算する方法は?

2025-04-18に投稿されました
ブラウズ:541

How Can I Efficiently Calculate the Difference Between Two Dates in C#?

C#

の日付差を効率的に計算する方法

さまざまなプログラミングシナリオで、2つの日付間の日数の違いを決定することが一般的なタスクです。 C#では、 date classおよび timespan 構造を使用するなど、この違いを計算する方法がいくつかあります。

日付クラスとタイムパン構造

]を使用します

2つの日付の間の日数の違いを計算する簡単な方法は、日付クラスを使用して2つの日付を表し、 Timespan オブジェクトを取得することです。

DateTime startDate = new DateTime(2023, 1, 1);
DateTime endDate = new DateTime(2023, 3, 8);
TimeSpan days = endDate - startDate;
Console.WriteLine(days.TotalDays); // 输出:66
このコードは、

属性の属性を使用します。この例の結果は66、つまり2023年1月1日から3月8日までの日数です。 数学クラスを使用します

] 日付間の日数の違いを計算するもう1つの方法は、 Math.abs()

メソッドを使用して、ダニで表される2つの日付値の絶対的な違いを見つけることです。

Long StartDateTicks = new DateTime(2023、1、1).Ticks; long enddatectics = new DateTime(2023、3、8).Ticks; 長い日= math.abs(enddateticks -startdateticks) / timespan.ticksperday; console.writeline(日); //出力:66

long startDateTicks = new DateTime(2023, 1, 1).Ticks;
long endDateTicks = new DateTime(2023, 3, 8).Ticks;
long days = Math.Abs(endDateTicks - startDateTicks) / TimeSpan.TicksPerDay;
Console.WriteLine(days); // 输出:66
プロパティに依存しています。この違いを毎日のティック数で割ることにより、2つの日付の間に日数を取得します。

知らせ:

選択した方法に関係なく、日付値が有効であり、グレゴリオカレンダーの日付を表すことを確認してください。また、開始日が終了日より遅いケースの処理を検討してください。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3