ホームページ > バックエンド開発 > C++ > C# で日付範囲の配列またはリストを生成するにはどうすればよいですか?

C# で日付範囲の配列またはリストを生成するにはどうすればよいですか?

Susan Sarandon
リリース: 2025-01-10 21:21:44
オリジナル
506 人が閲覧しました

How to Generate a Date Range Array or List in C#?

C# で日付範囲の配列またはリストを生成します

日付を X 軸として使用するグラフで複数のデータ系列を生成する場合、範囲全体をカバーする日付の完全なリストを用意することが重要です。これにより、すべての日付のデータがない場合でも、すべてのシリーズの日付値が一貫したものになります。

LINQ メソッド

効率的な方法は、LINQ を使用することです:

<code class="language-csharp">Enumerable.Range(0, 1 + end.Subtract(start).Days)
          .Select(offset => start.AddDays(offset))
          .ToArray();</code>
ログイン後にコピー

このコードは、日付範囲の開始点 (start) から始まり、範囲の終了点 (end) に達するまで 1 日に 1 回増加する日付のリストを作成します。

For ループメソッド

または、for ループを使用することもできます。

<code class="language-csharp">var dates = new List<DateTime>();

for (var dt = start; dt <= end; dt = dt.AddDays(1))
{
   dates.Add(dt);
}</code>
ログイン後にコピー

このループは、LINQ メソッドと同じ方法で日付のリストを作成します。

値を入力

欠落している日付の系列のデフォルト値を埋めるには、全範囲のすべての日付を列挙して入力します。

<code class="language-csharp">var paddedSeries = fullDates.ToDictionary(date => date, date => timeSeries.ContainsDate(date) 
                                               ? timeSeries[date] : defaultValue);</code>
ログイン後にコピー

このコードは、キーが日付、値がデータである辞書を作成します。日付がシリーズ内に存在する場合は、対応する値が取得され、それ以外の場合はデフォルト値が割り当てられます。

以上がC# で日付範囲の配列またはリストを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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