# DateTime.DaysInMonth(Int32, Int32) メソッド

## 定義

``````public:
static int DaysInMonth(int year, int month);``````
``public static int DaysInMonth (int year, int month);``
``static member DaysInMonth : int * int -> int``
``Public Shared Function DaysInMonth (year As Integer, month As Integer) As Integer``

year
Int32

month
Int32

#### 戻り値

Int32

たとえば、`month` が 2 月を表す 2 に等しい場合、戻り値には、`year` が閏年かどうかによって 28 または 29 を返します。For example, if `month` equals 2 for February, the return value is 28 or 29 depending upon whether `year` is a leap year.

#### 例外

`month` が 1 未満であるか、または 12 を超えています。`month` is less than 1 or greater than 12.

または-or- `year` が 1 未満であるか、または 9999 を超えています。`year` is less than 1 or greater than 9999.

## 例

``````using namespace System;

int main()
{
const int July = 7;
const int Feb = 2;

int daysInJuly = System::DateTime::DaysInMonth( 2001, July );
Console::WriteLine(daysInJuly);
// daysInFeb gets 28 because the year 1998 was not a leap year.
int daysInFeb = System::DateTime::DaysInMonth( 1998, Feb );
Console::WriteLine(daysInFeb);
// daysInFebLeap gets 29 because the year 1996 was a leap year.
int daysInFebLeap = System::DateTime::DaysInMonth( 1996, Feb );
Console::WriteLine(daysInFebLeap);
}
// The example displays the following output:
//       31
//       28
//       29
``````
``````using System;

class Example
{
static void Main()
{
const int July = 7;
const int Feb = 2;

int daysInJuly = System.DateTime.DaysInMonth(2001, July);
Console.WriteLine(daysInJuly);

// daysInFeb gets 28 because the year 1998 was not a leap year.
int daysInFeb = System.DateTime.DaysInMonth(1998, Feb);
Console.WriteLine(daysInFeb);

// daysInFebLeap gets 29 because the year 1996 was a leap year.
int daysInFebLeap = System.DateTime.DaysInMonth(1996, Feb);
Console.WriteLine(daysInFebLeap);
}
}
// The example displays the following output:
//       31
//       28
//       29
``````
``````Class Example
Public Shared Sub Main()
Const July As Integer = 7
Const Feb As Integer = 2

Dim daysInJuly As Integer = System.DateTime.DaysInMonth(2001, July)
Console.WriteLine(daysInJuly)

' daysInFeb gets 28 because the year 1998 was not a leap year.
Dim daysInFeb As Integer = System.DateTime.DaysInMonth(1998, Feb)
Console.WriteLine(daysInFeb)
' daysInFebLeap gets 29 because the year 1996 was a leap year.
Dim daysInFebLeap As Integer = System.DateTime.DaysInMonth(1996, Feb)
Console.WriteLine(daysInFebLeap)
End Sub
End Class
' The example displays the following output:
'       31
'       28
'       29
``````

``````using System;
using System.Globalization;

public class Example
{
public static void Main()
{
int[] years = { 2012, 2014 };
DateTimeFormatInfo dtfi = DateTimeFormatInfo.CurrentInfo;
Console.WriteLine("Days in the Month for the {0} culture " +
"using the {1} calendar\n",
CultureInfo.CurrentCulture.Name,
dtfi.Calendar.GetType().Name.Replace("Calendar", ""));
Console.WriteLine("{0,-10}{1,-15}{2,4}\n", "Year", "Month", "Days");

foreach (var year in years) {
for (int ctr = 0; ctr <= dtfi.MonthNames.Length - 1; ctr++) {
if (String.IsNullOrEmpty(dtfi.MonthNames[ctr]))
continue;

Console.WriteLine("{0,-10}{1,-15}{2,4}", year,
dtfi.MonthNames[ctr],
DateTime.DaysInMonth(year, ctr + 1));
}
Console.WriteLine();
}
}
}
// The example displays the following output:
//    Days in the Month for the en-US culture using the Gregorian calendar
//
//    Year      Month          Days
//
//    2012      January          31
//    2012      February         29
//    2012      March            31
//    2012      April            30
//    2012      May              31
//    2012      June             30
//    2012      July             31
//    2012      August           31
//    2012      September        30
//    2012      October          31
//    2012      November         30
//    2012      December         31
//
//    2014      January          31
//    2014      February         28
//    2014      March            31
//    2014      April            30
//    2014      May              31
//    2014      June             30
//    2014      July             31
//    2014      August           31
//    2014      September        30
//    2014      October          31
//    2014      November         30
//    2014      December         31
``````
``````Imports System.Globalization

Module Example
Public Sub Main()
Dim years() As Integer = { 2012, 2014 }
Dim dtfi As DateTimeFormatInfo = DateTimeFormatInfo.CurrentInfo
Console.WriteLine("Days in the Month for the {0} culture " +
"using the {1} calendar",
CultureInfo.CurrentCulture.Name,
dtfi.Calendar.GetType.Name.Replace("Calendar", ""))
Console.WriteLine()
Console.WriteLine("{0,-10}{1,-15}{2,4}", "Year", "Month", "Days")
Console.WriteLine()

For Each [year] As Integer In years
For ctr As Integer = 0 To dtfi.MonthNames.Length - 1
If String.IsNullOrEmpty(dtfi.MonthNames(ctr)) Then
Continue For
End If

Console.WriteLine("{0,-10}{1,-15}{2,4}", [year],
dtfi.MonthNames(ctr),
DateTime.DaysInMonth([year], ctr + 1))
Next
Console.WriteLine()
Next
End Sub
End Module
' The example displays the following output:
'    Days in the Month for the en-US culture using the Gregorian calendar
'
'    Year      Month          Days
'
'    2012      January          31
'    2012      February         29
'    2012      March            31
'    2012      April            30
'    2012      May              31
'    2012      June             30
'    2012      July             31
'    2012      August           31
'    2012      September        30
'    2012      October          31
'    2012      November         30
'    2012      December         31
'
'    2014      January          31
'    2014      February         28
'    2014      March            31
'    2014      April            30
'    2014      May              31
'    2014      June             30
'    2014      July             31
'    2014      August           31
'    2014      September        30
'    2014      October          31
'    2014      November         30
'    2014      December         31
``````

## 注釈

この DaysInMonth メソッドは、 `month` `year` グレゴリオ暦が現在のカルチャの現在の暦でない場合でも、とは常にとを、グレゴリオ暦の月と年として解釈します。The DaysInMonth method always interprets `month` and `year` as the month and year of the Gregorian calendar even if the Gregorian calendar is not the current culture's current calendar. 特定の暦の指定した月の日数を取得するには、そのカレンダーの GetDaysInMonth メソッドを呼び出します。To get the number of days in a specified month of a particular calendar, call that calendar's GetDaysInMonth method.