PersianCalendar.IsLeapYear(Int32, Int32) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, zda zadaný rok v zadané éře je přestupný rok.
public:
override bool IsLeapYear(int year, int era);
public override bool IsLeapYear (int year, int era);
override this.IsLeapYear : int * int -> bool
Public Overrides Function IsLeapYear (year As Integer, era As Integer) As Boolean
Parametry
- year
- Int32
Celé číslo od 1 do 9378, které představuje rok.
- era
- Int32
Celé číslo od 0 do 1, které představuje éru.
Návraty
true
je-li zadaným rokem přestupný rok; v opačném případě . false
Výjimky
year
nebo era
je mimo rozsah podporovaný tímto kalendářem.
Příklady
Následující příklad kódu ukazuje použití IsLeapYear metody.
using System;
using System.Globalization;
class Sample
{
public static void Main()
{
PersianCalendar jc = new PersianCalendar();
DateTime thisDate = DateTime.Now;
//--------------------------------------------------------------------------------
// Properties
//--------------------------------------------------------------------------------
Console.WriteLine("\n........... Selected Properties .....................\n");
Console.Write("Eras:");
foreach (int era in jc.Eras)
{
Console.WriteLine(" era = {0}", era);
}
//--------------------------------------------------------------------------------
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:
// ........... Selected Properties .....................
//
// Eras: era = 1
//
// 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
Imports System.Globalization
Class Sample
Public Shared Sub Main()
'--------------------------------------------------------------------------------
' Get today's date.
'--------------------------------------------------------------------------------
Dim jc As New PersianCalendar()
Dim thisDate As Date = Date.Now
'--------------------------------------------------------------------------------
' Properties
'--------------------------------------------------------------------------------
Console.WriteLine(vbCrLf & _
"........... Selected Properties ....................." & vbCrLf)
Console.Write("Eras:")
Dim era As Integer
For Each era In jc.Eras
Console.WriteLine(" era = {0}", era)
Next era
'--------------------------------------------------------------------------------
Console.WriteLine("TwoDigitYearMax = {0}", jc.TwoDigitYearMax)
'--------------------------------------------------------------------------------
' Methods
'--------------------------------------------------------------------------------
Console.WriteLine(vbCrLf & _
"............ Selected Methods ......................." & vbCrLf)
'--------------------------------------------------------------------------------
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))
End Sub
End Class
' The example displays output like the following:
' ........... Seleted Properties .....................
'
' Eras: era = 1
'
' 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
Poznámky
Počínaje rozhraním .NET Framework 4.6 se implementace PersianCalendar třídy změnila z observačního algoritmu na sluneční algoritmus hidžra. V důsledku toho IsLeapYear může metoda při spuštění v rozhraní .NET Framework 4.6 vrátit jiné hodnoty než při spuštění v předchozích verzích rozhraní .NET Framework.