Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

PersianCalendar.IsLeapYear Method (Int32, Int32)

Determines whether the specified year in the specified era is a leap year.

Namespace:  System.Globalization
Assembly:  mscorlib (in mscorlib.dll)

public override bool IsLeapYear(
	int year,
	int era
)

Parameters

year
Type: System.Int32
An integer from 1 through 9378 that represents the year.
era
Type: System.Int32
An integer from 0 through 1 that represents the era.

Return Value

Type: System.Boolean
true if the specified year is a leap year; otherwise, false.

ExceptionCondition
ArgumentOutOfRangeException

year or era is outside the range supported by this calendar.

The following code example demonstrates the use of the IsLeapYear method.


// This example demonstrates the members of the PersianCalendar class.

using System;
using System.Globalization;

class Sample 
{
    public static void Main() 
    {
		//--------------------------------------------------------------------------------
		// Get today's date.
		//--------------------------------------------------------------------------------
      Console.WriteLine("\n................. Today ...........................\n");
      PersianCalendar jc = new PersianCalendar();
      DateTime thisDate = DateTime.Now;

		// Display the current date using the Gregorian and Persian calendars.
	   Console.WriteLine("Today is:");
      Console.WriteLine("   {0:dddd}, {0} in the Gregorian calendar.", thisDate);
      Console.WriteLine("   {0}, {1}/{2}/{3} {4}:{5}:{6} in the Persian calendar.", 
                        jc.GetDayOfWeek(thisDate), 
                        jc.GetMonth(thisDate), 
                        jc.GetDayOfMonth(thisDate), 
                        jc.GetYear(thisDate), 
                        jc.GetHour(thisDate), 
                        jc.GetMinute(thisDate), 
                        jc.GetSecond(thisDate));
		//--------------------------------------------------------------------------------
		// Fields
		//--------------------------------------------------------------------------------
      Console.WriteLine("\n............... Fields .............................\n");
      Console.WriteLine("PersianEra = {0}", PersianCalendar.PersianEra);
		//--------------------------------------------------------------------------------
		// Properties
		//--------------------------------------------------------------------------------
      Console.WriteLine("\n............... Properties .........................\n");
      Console.Write("Eras:");
      foreach (int era in jc.Eras)
      {
         Console.WriteLine(" era = {0}", era);
      }
		//--------------------------------------------------------------------------------
      Console.WriteLine("\nGregorian Date Range Supported by the Persian Calendar:");
      Console.WriteLine("   From {0:G}", jc.MinSupportedDateTime);
      Console.WriteLine("   To {0:G}", jc.MaxSupportedDateTime);
		//--------------------------------------------------------------------------------
      Console.WriteLine("\nTwoDigitYearMax = {0}", jc.TwoDigitYearMax);
		//--------------------------------------------------------------------------------
		// Methods
		//--------------------------------------------------------------------------------
      Console.WriteLine("\n............ Selected Methods .......................\n");

		//--------------------------------------------------------------------------------
      Console.WriteLine("GetDayOfYear: day = {0}", jc.GetDayOfYear(thisDate));
		//--------------------------------------------------------------------------------
      Console.WriteLine("GetDaysInMonth: days = {0}", 
                        jc.GetDaysInMonth( thisDate.Year, thisDate.Month, 
                        PersianCalendar.PersianEra));
		//--------------------------------------------------------------------------------
      Console.WriteLine("GetDaysInYear: days = {0}", 
                        jc.GetDaysInYear(thisDate.Year, PersianCalendar.PersianEra));
		//--------------------------------------------------------------------------------
      Console.WriteLine("GetLeapMonth: leap month (if any) = {0}", 
                        jc.GetLeapMonth(thisDate.Year, PersianCalendar.PersianEra));
		//-------------------------------------------------------------
      Console.WriteLine("GetMonthsInYear: months in a year = {0}", 
                        jc.GetMonthsInYear(thisDate.Year, PersianCalendar.PersianEra));
		//--------------------------------------------------------------------------------
      Console.WriteLine("IsLeapDay: This is a leap day = {0}", 
                        jc.IsLeapDay(thisDate.Year, thisDate.Month, thisDate.Day, 
                        PersianCalendar.PersianEra));
		//--------------------------------------------------------------------------------
      Console.WriteLine("IsLeapMonth: This is a leap month = {0}", 
                        jc.IsLeapMonth(thisDate.Year, thisDate.Month, 
                        PersianCalendar.PersianEra));
		//--------------------------------------------------------------------------------
      Console.WriteLine("IsLeapYear: 1370 is a leap year = {0}", 
                        jc.IsLeapYear(1370, PersianCalendar.PersianEra));
		//--------------------------------------------------------------------------------

		// Get the 4-digit year for a year whose last two digits are 99. The 4-digit year 
		// depends on the current value of the TwoDigitYearMax property.

      Console.WriteLine("ToFourDigitYear:");
      Console.WriteLine("  If TwoDigitYearMax = {0}, ToFourDigitYear(99) = {1}", 
                         jc.TwoDigitYearMax, jc.ToFourDigitYear(99));
      jc.TwoDigitYearMax = thisDate.Year;
      Console.WriteLine("  If TwoDigitYearMax = {0}, ToFourDigitYear(99) = {1}", 
                        jc.TwoDigitYearMax, jc.ToFourDigitYear(99));
    }
}
// The example displays the following output:
//       ................. Today ...........................
//       
//       Today is:
//          Tuesday, 3/20/2012 7:54:00 AM in the Gregorian calendar.
//          Tuesday, 1/1/1391 7:54:0 in the Persian calendar.
//       
//       ............... Fields .............................
//       
//       PersianEra = 1
//       
//       ............... Properties .........................
//       
//       Eras: era = 1
//       
//       Gregorian Date Range Supported by the Persian Calendar:
//          From 3/21/0622 12:00:00 AM
//          To 12/31/9999 11:59:59 PM
//       
//       TwoDigitYearMax = 99
//       
//       ............ Selected Methods .......................
//       
//       GetDayOfYear: day = 1
//       GetDaysInMonth: days = 31
//       GetDaysInYear: days = 365
//       GetLeapMonth: leap month (if any) = 0
//       GetMonthsInYear: months in a year = 12
//       IsLeapDay: This is a leap day = False
//       IsLeapMonth: This is a leap month = False
//       IsLeapYear: 1370 is a leap year = True
//       ToFourDigitYear:
//         If TwoDigitYearMax = 99, ToFourDigitYear(99) = 99
//         If TwoDigitYearMax = 2012, ToFourDigitYear(99) = 1999


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Community Additions

ADD
Show:
© 2015 Microsoft