[C#]DateTimeで月末を取得するには?

C#

どうも、ちょげ(@chogetarou)です。

DateTimeで月末を取得する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

DateTimeで月末を取得するには、AddMonths()とAddDays()を使います。

まず、DateTimeから月初を取得します。

//dateの月初を取得
DateTime firstDay = new DateTime(date.Year, date.Month, 1);

次に、月初からAddMonths()を呼び出し、AddMonths()の引数に「1」を指定します。

そして、AddMonths()の結果からAddDays()を呼び出します。

AddDays()の引数に「−1」を指定します。

//firstDay=月初
DateTime lastDay = firstDay.AddMonths(1).AddDays(-1);

上記のAddDays()は、DateTimeの月末を返します。

スポンサーリンク

使用例

using System;
public class Example
{
    public static void Main()
    {
        DateTime date = new DateTime(2022, 7, 22);
        
        DateTime firstDay = new DateTime(date.Year, date.Month, 1);

        DateTime lastDay = firstDay.AddMonths(1).AddDays(-1);
        
        Console.WriteLine(date);
        Console.WriteLine(lastDay);
    }
}
出力:
7/22/2022 12:00:00 AM
7/31/2022 12:00:00 AM

コメント

タイトルとURLをコピーしました