DateTime.DaysInMonth() Method in C#

This method returns the number of days in the specified month and year. This 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.

Syntax:

public static int DaysInMonth (int year, int month);

Return Value: This method return the number of days in the month for the specified year. For example, if month equals 2 for February, the return value will be 28 or 29 depending upon whether the year is a leap year.



Exception: This method will give ArgumentOutOfRangeException if month is less than 1 or greater than 12 or year is less than 1 or greater than 9999.

Below programs illustrate the use of the above-discussed method:

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# code to demonstrate the
// DaysInMonth(Int32, Int32) Method
using System;
  
class GFG {
  
    // Main Method
    static void Main()
    {
  
        // taking month values
        int Dec = 12;
        int Feb = 2;
  
        // using the method
        int daysindec = DateTime.DaysInMonth(2008, Dec);
  
        Console.WriteLine(daysindec);
  
        // daysinfeb1 gets 29 because the
        // year 2016 was a leap year.
        int daysinfeb1 = DateTime.DaysInMonth(2016, Feb);
  
        Console.WriteLine(daysinfeb1);
  
        // daysinfeb2 gets 28 because
        // the year 2018 was not a leap year.
        int daysinfeb2 = DateTime.DaysInMonth(2018, Feb);
  
        Console.WriteLine(daysinfeb2);
    }
}

chevron_right


Output:

31
29
28

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# code to demonstrate the
// DaysInMonth(Int32, Int32) Method
using System;
  
class GFG {
  
    // Main Method
    static void Main()
    {
  
        // taking month and year's value
        int y = 10000;
        int m = 7;
  
        // using the method will give error
        // as the value of the year is greater
        // than 10000
        int res = DateTime.DaysInMonth(y, m);
  
        Console.WriteLine(res);
    }
}

chevron_right


Runtime Error:

Unhandled Exception:
System.ArgumentOutOfRangeException: Year must be between 1 and 9999.
Parameter name: year

Reference:



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.