最終日を取得する方法
DateTime.DaysInMonthメソッド の引数に 年と月 を渡すと、その月が何日あるかを数値で返します。// DateTime.DaysInMonth の使用方法
int 日数(1-31) = DateTime.DaysInMonth(年, 月);
- DaysInMonth はスタティックメソッドのため、インスタンス化(new)せずに使用できます。
- 第1引数の 年 は 1-9999 の範囲で指定できます。範囲外の値を渡すと例外が発生します。
- 第2引数の 月 は 1-12 の範囲で指定できます。範囲外の値を渡すと例外が発生します。
サンプルコード
2024年2月の最終日を取得し、表示します。// 2024年2月の日数を取得する
int daysInMonth = DateTime.DaysInMonth(2024, 2);
// 結果="2024年2月の最終日は29日"
Console.WriteLine($"2024年2月の最終日は{daysInMonth}日");

最終日が設定されたDateTime型を取得する
DateTime のコンストラクタに DateTime.DaysInMonth で取得した日付を渡します。DateTime 現在年月日 = DateTime.Today;
DateTime 月末 = new DateTime(現在年月日.Year, 現在年月日.Month, DateTime.DaysInMonth(現在年月日.Year, 現在年月日.Month));
検証環境
- .NET 6.0
- Microsoft Visual Studio Enterprise 2022 Version 17.2.6
- Microsoft Windows 10 Enterprise Version 21H2 OS Build 19044.1826 Experience: Windows Feature Experience Pack 120.2212.4180.0