どうも、ちょげ(@chogetarou)です。
DateTimeで月末を取得する方法を紹介します。
方法

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
コメント