GregorianCalendar Třída
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í.
Představuje gregoriánský kalendář.
public ref class GregorianCalendar : System::Globalization::Calendar
public class GregorianCalendar : System.Globalization.Calendar
[System.Serializable]
public class GregorianCalendar : System.Globalization.Calendar
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class GregorianCalendar : System.Globalization.Calendar
type GregorianCalendar = class
inherit Calendar
[<System.Serializable>]
type GregorianCalendar = class
inherit Calendar
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type GregorianCalendar = class
inherit Calendar
Public Class GregorianCalendar
Inherits Calendar
- Dědičnost
- Atributy
Příklady
Následující příklad kódu ukazuje, že DateTimeFormatInfo ignoruje interpunkci v názvu éry, pouze pokud je kalendář gregoriánský a jazyková verze používá název éry "A.D".
using System;
using System.Globalization;
public class SamplesGregorianCalendar {
public static void Main() {
// Creates strings with punctuation and without.
String strADPunc = "A.D.";
String strADNoPunc = "AD";
String strCEPunc = "C.E.";
String strCENoPunc = "CE";
// Calls DTFI.GetEra for each culture that uses GregorianCalendar as the default calendar.
Console.WriteLine( " ----- AD ----- ----- CE -----" );
Console.WriteLine( "CULTURE PUNC NO PUNC PUNC NO PUNC CALENDAR" );
foreach ( CultureInfo myCI in CultureInfo.GetCultures( CultureTypes.SpecificCultures ) ) {
Console.Write( "{0,-12}", myCI );
Console.Write( "{0,-7}{1,-9}", myCI.DateTimeFormat.GetEra( strADPunc ), myCI.DateTimeFormat.GetEra( strADNoPunc ) );
Console.Write( "{0,-7}{1,-9}", myCI.DateTimeFormat.GetEra( strCEPunc ), myCI.DateTimeFormat.GetEra( strCENoPunc ) );
Console.Write( "{0}", myCI.Calendar );
Console.WriteLine();
}
}
}
/*
This code produces the following output. This output has been cropped for brevity.
----- AD ----- ----- CE -----
CULTURE PUNC NO PUNC PUNC NO PUNC CALENDAR
ar-SA -1 -1 -1 -1 System.Globalization.HijriCalendar
ar-IQ 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-EG 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-LY 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-DZ 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-MA 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-TN 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-OM 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-YE 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-SY 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-JO 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-LB 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-KW 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-AE 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-BH 1 1 -1 -1 System.Globalization.GregorianCalendar
ar-QA 1 1 -1 -1 System.Globalization.GregorianCalendar
bg-BG 1 1 -1 -1 System.Globalization.GregorianCalendar
ca-ES -1 -1 -1 -1 System.Globalization.GregorianCalendar
zh-TW -1 -1 -1 -1 System.Globalization.GregorianCalendar
zh-CN -1 -1 -1 -1 System.Globalization.GregorianCalendar
zh-HK -1 -1 -1 -1 System.Globalization.GregorianCalendar
zh-SG 1 1 -1 -1 System.Globalization.GregorianCalendar
zh-MO 1 1 -1 -1 System.Globalization.GregorianCalendar
cs-CZ -1 -1 -1 -1 System.Globalization.GregorianCalendar
da-DK 1 1 -1 -1 System.Globalization.GregorianCalendar
*/
Imports System.Globalization
Public Class SamplesGregorianCalendar
Public Shared Sub Main()
' Creates strings with punctuation and without.
Dim strADPunc As [String] = "A.D."
Dim strADNoPunc As [String] = "AD"
Dim strCEPunc As [String] = "C.E."
Dim strCENoPunc As [String] = "CE"
' Calls DTFI.GetEra for each culture that uses GregorianCalendar as the default calendar.
Console.WriteLine(" ----- AD ----- ----- CE -----")
Console.WriteLine("CULTURE PUNC NO PUNC PUNC NO PUNC CALENDAR")
Dim myCI As CultureInfo
For Each myCI In CultureInfo.GetCultures(CultureTypes.SpecificCultures)
Console.Write("{0,-12}", myCI)
Console.Write("{0,-7}{1,-9}", myCI.DateTimeFormat.GetEra(strADPunc), myCI.DateTimeFormat.GetEra(strADNoPunc))
Console.Write("{0,-7}{1,-9}", myCI.DateTimeFormat.GetEra(strCEPunc), myCI.DateTimeFormat.GetEra(strCENoPunc))
Console.Write("{0}", myCI.Calendar)
Console.WriteLine()
Next myCI
End Sub
End Class
'This code produces the following output. This output has been cropped for brevity.
'
' ----- AD ----- ----- CE -----
'CULTURE PUNC NO PUNC PUNC NO PUNC CALENDAR
'ar-SA -1 -1 -1 -1 System.Globalization.HijriCalendar
'ar-IQ 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-EG 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-LY 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-DZ 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-MA 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-TN 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-OM 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-YE 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-SY 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-JO 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-LB 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-KW 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-AE 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-BH 1 1 -1 -1 System.Globalization.GregorianCalendar
'ar-QA 1 1 -1 -1 System.Globalization.GregorianCalendar
'bg-BG 1 1 -1 -1 System.Globalization.GregorianCalendar
'ca-ES -1 -1 -1 -1 System.Globalization.GregorianCalendar
'zh-TW -1 -1 -1 -1 System.Globalization.GregorianCalendar
'zh-CN -1 -1 -1 -1 System.Globalization.GregorianCalendar
'zh-HK -1 -1 -1 -1 System.Globalization.GregorianCalendar
'zh-SG 1 1 -1 -1 System.Globalization.GregorianCalendar
'zh-MO 1 1 -1 -1 System.Globalization.GregorianCalendar
'cs-CZ -1 -1 -1 -1 System.Globalization.GregorianCalendar
'da-DK 1 1 -1 -1 System.Globalization.GregorianCalendar
Poznámky
Gregoriánský kalendář rozpoznává dvě éry: B.C. nebo B.C.E. a A.D. nebo C.E. Tato implementace GregorianCalendar třídy rozpoznává pouze aktuální éru (A.D. nebo C.E.).
Poznámka:
Informace o používání GregorianCalendar třídy a dalších tříd kalendáře v rozhraní .NET Framework naleznete v tématu Práce s kalendáři.
Přestupný rok v gregoriánském kalendáři je definován jako rok, který je rovnoměrně dělitelný 4, pokud není dělitelný 100. Roky, které jsou dělitelné 400, jsou však přestupné roky. Například rok 1900 nebyl přestupný rok, ale rok 2000 byl. Běžný rok má 365 dní a přestupný rok má 366 dní.
Gregoriánský kalendář má 12 měsíců s 28 až 31 dny každý: leden (31 dní), únor (28 nebo 29 dní), březen (31 dní), duben (30 dní), květen (30 dní), květen (31 dní), červen (30 dní), červenec (31 dní), srpen (31 dní), září (30 dní), říjen (31 dní), listopad (30 dní) a prosinec (31 dní). Únor má 29 dní během přestupových let a 28 v běžných letech.
Důležité
Ve výchozím nastavení gregoriánský kalendář vyjadřují všechna DateTimeDateTimeOffset data a časy a hodnoty.
Gregoriánský kalendář byl vyvinut jako náhrada za Julian kalendář (který je reprezentován JulianCalendar třídou) a byl poprvé představen v malém počtu kultur 15. října 1582. Při práci s historickými daty, která předchází přijetí gregoriánského kalendáře jazykové verze, byste měli použít původní kalendář, pokud je dostupný v rozhraní .NET Framework. Například Dánsko se změnilo z julianského kalendáře na gregoriánský kalendář 19. února (v julianském kalendáři) nebo 1. března (v gregoriánském kalendáři) roku 1700. V tomto případě pro data před přijetím gregoriánského kalendáře byste měli použít Julian kalendář. Mějte však na paměti, že žádná jazyková verze nenabízí vnitřní podporu třídy JulianCalendar . Třídu musíte použít JulianCalendar jako samostatný kalendář. Další informace najdete v tématu Práce s kalendáři.
Následující příklad ukazuje, že 18. února 1700 v juliánském kalendáři, což je poslední den, kdy byl Julian kalendář oficiálně použit v Dánsku, je jeden den dřívější než 1. března 1700 v gregoriánském kalendáři.
using System;
using System.Globalization;
using System.Threading;
public class Example
{
public static void Main()
{
Thread.CurrentThread.CurrentCulture = new CultureInfo("da-DK");
JulianCalendar jc = new JulianCalendar();
DateTime lastDate = new DateTime(1700, 2, 18, jc);
Console.WriteLine("Last date (Gregorian): {0:d}", lastDate);
Console.WriteLine("Last date (Julian): {0}-{1}-{2}\n", jc.GetDayOfMonth(lastDate),
jc.GetMonth(lastDate), jc.GetYear(lastDate));
DateTime firstDate = lastDate.AddDays(1);
Console.WriteLine("First date (Gregorian): {0:d}", firstDate);
Console.WriteLine("First date (Julian): {0}-{1}-{2}", jc.GetDayOfMonth(firstDate),
jc.GetMonth(firstDate), jc.GetYear(firstDate));
}
}
// The example displays the following output:
// Last date (Gregorian): 28-02-1700
// Last date (Julian): 18-2-1700
//
// First date (Gregorian): 01-03-1700
// First date (Julian): 19-2-1700
Imports System.Globalization
Imports System.Threading
Module Example
Public Sub Main()
Thread.CurrentThread.CurrentCulture = New CultureInfo("da-DK")
Dim jc As New JulianCalendar()
Dim lastDate As New DateTime(1700, 2, 18, jc)
Console.WriteLine("Last date (Gregorian): {0:d}", lastDate)
Console.WriteLine("Last date (Julian): {0}-{1}-{2}", jc.GetDayOfMonth(lastDate),
jc.GetMonth(lastDate), jc.GetYear(lastDate))
Console.WriteLine()
Dim firstDate As DateTime = lastDate.AddDays(1)
Console.WriteLine("First date (Gregorian): {0:d}", firstDate)
Console.WriteLine("First date (Julian): {0}-{1}-{2}", jc.GetDayOfMonth(firstDate),
jc.GetMonth(firstDate), jc.GetYear(firstDate))
End Sub
End Module
' The example displays the following output:
' Last date (Gregorian): 28-02-1700
' Last date (Julian): 18-2-1700
'
' First date (Gregorian): 01-03-1700
' First date (Julian): 19-2-1700
Každý z nich CultureInfo podporuje sadu kalendářů. Vlastnost Calendar vrátí výchozí kalendář jazykové verze a OptionalCalendars vlastnost vrátí pole obsahující všechny kalendáře podporované jazykovou verzí. Chcete-li změnit kalendář používaný aplikací CultureInfo, může aplikace nastavit Calendar vlastnost na nový Calendar.
GetEra ignoruje interpunkci v zkrácených názvech era, pouze pokud GregorianCalendar je vybraná v DateTimeFormatInfo.Calendar a jazyková verze používá jako název éry "A.D", tj. "A.D", je ekvivalentem "AD".
Konstruktory
| Name | Description |
|---|---|
| GregorianCalendar() |
Inicializuje novou instanci GregorianCalendar třídy pomocí výchozí GregorianCalendarTypes hodnoty. |
| GregorianCalendar(GregorianCalendarTypes) |
Inicializuje novou instanci GregorianCalendar třídy pomocí zadané GregorianCalendarTypes hodnoty. |
Pole
| Name | Description |
|---|---|
| ADEra |
Představuje aktuální éru. Toto pole je konstantní. |
| CurrentEra |
Představuje aktuální éru aktuálního kalendáře. Hodnota tohoto pole je 0. (Zděděno od Calendar) |
Vlastnosti
| Name | Description |
|---|---|
| AlgorithmType |
Získá hodnotu, která označuje, zda aktuální kalendář je solární, lunární nebo kombinace obou. |
| CalendarType |
Získá nebo nastaví GregorianCalendarTypes hodnotu, která označuje jazyk verzi aktuálního GregorianCalendar. |
| DaysInYearBeforeMinSupportedYear |
Získá počet dní v roce, který předchází rok, který je určen vlastností MinSupportedDateTime . (Zděděno od Calendar) |
| Eras |
Získá seznam období v GregorianCalendar. |
| IsReadOnly |
Získá hodnotu určující, zda tento Calendar objekt je jen pro čtení. (Zděděno od Calendar) |
| MaxSupportedDateTime |
Získá nejnovější datum a čas podporovaný typem GregorianCalendar . |
| MinSupportedDateTime |
Získá nejstarší datum a čas podporovaný typem GregorianCalendar . |
| TwoDigitYearMax |
Získá nebo nastaví poslední rok 100-rok rozsahu, který může být reprezentován dvoumístným rokem. |
Metody
| Name | Description |
|---|---|
| AddDays(DateTime, Int32) |
DateTime Vrátí zadaný počet dnů od zadaného DateTimeparametru . (Zděděno od Calendar) |
| AddHours(DateTime, Int32) |
DateTime Vrátí zadaný počet hodin od zadaného DateTimeparametru . (Zděděno od Calendar) |
| AddMilliseconds(DateTime, Double) |
DateTime Vrátí zadaný počet milisekund od zadaného DateTimeparametru . (Zděděno od Calendar) |
| AddMinutes(DateTime, Int32) |
Vrátí zadaný DateTime počet minut od zadaného DateTimeparametru . (Zděděno od Calendar) |
| AddMonths(DateTime, Int32) |
DateTime Vrátí zadaný počet měsíců od zadaného DateTimeparametru . |
| AddSeconds(DateTime, Int32) |
Vrátí zadaný DateTime počet sekund od zadaného DateTimeparametru . (Zděděno od Calendar) |
| AddWeeks(DateTime, Int32) |
DateTime Vrátí zadaný počet týdnů od zadaného |
| AddWeeks(DateTime, Int32) |
DateTime Vrátí zadaný počet týdnů od zadaného DateTimeparametru . (Zděděno od Calendar) |
| AddYears(DateTime, Int32) | |
| Clone() |
Vytvoří nový objekt, který je kopií aktuálního Calendar objektu. (Zděděno od Calendar) |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetDayOfMonth(DateTime) |
Vrátí den v měsíci v zadaném DateTime. |
| GetDayOfWeek(DateTime) |
Vrátí den v týdnu v zadaném DateTime. |
| GetDayOfYear(DateTime) |
Vrátí den v roce v zadaném DateTime. |
| GetDaysInMonth(Int32, Int32, Int32) |
Vrátí počet dní v zadaném měsíci v zadaném roce v zadaném období. |
| GetDaysInMonth(Int32, Int32) |
Vrátí počet dní v zadaném měsíci a roce aktuální éry. (Zděděno od Calendar) |
| GetDaysInYear(Int32, Int32) |
Vrátí počet dní v zadaném roce v zadaném období. |
| GetDaysInYear(Int32) |
Vrátí počet dní v zadaném roce aktuální éry. (Zděděno od Calendar) |
| GetEra(DateTime) |
Vrátí éru v zadaném DateTime. |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetHour(DateTime) |
Vrátí hodnotu hodin v zadané DateTimehodnotě . (Zděděno od Calendar) |
| GetLeapMonth(Int32, Int32) |
Vypočítá přestupný měsíc pro zadaný rok a éru. |
| GetLeapMonth(Int32) |
Vypočítá přestupný měsíc pro zadaný rok. (Zděděno od Calendar) |
| GetMilliseconds(DateTime) |
Vrátí hodnotu milisekund v zadané DateTimehodnotě . (Zděděno od Calendar) |
| GetMinute(DateTime) |
Vrátí hodnotu minut v zadaném DateTimeargumentu . (Zděděno od Calendar) |
| GetMonth(DateTime) |
Vrátí měsíc v zadaném parametru DateTime. |
| GetMonthsInYear(Int32, Int32) |
Vrátí početměsícůch |
| GetMonthsInYear(Int32) |
Vrátí počet měsíců v zadaném roce v aktuální éře. (Zděděno od Calendar) |
| GetSecond(DateTime) |
Vrátí hodnotu sekund v zadané DateTimehodnotě . (Zděděno od Calendar) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek) |
Vrátí týden v roce, který obsahuje datum v zadaném DateTime objektu. |
| GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek) |
Vrátí týden v roce, který obsahuje datum v zadané DateTime hodnotě. (Zděděno od Calendar) |
| GetYear(DateTime) |
Vrátí rok v zadaném DateTimeparametru . |
| IsLeapDay(Int32, Int32, Int32, Int32) |
Určuje, zda zadané datum v zadané éře je přestupný den. |
| IsLeapDay(Int32, Int32, Int32) |
Určuje, zda zadané datum v aktuální éře je přestupný den. (Zděděno od Calendar) |
| IsLeapMonth(Int32, Int32, Int32) |
Určuje, zda zadaný měsíc v zadaném roce v zadané éře je přestupný měsíc. |
| IsLeapMonth(Int32, Int32) |
Určuje, zda zadaný měsíc v zadaném roce v aktuální éře je přestupný měsíc. (Zděděno od Calendar) |
| IsLeapYear(Int32, Int32) |
Určuje, zda zadaný rok v zadané éře je přestupný rok. |
| IsLeapYear(Int32) |
Určuje, zda zadaný rok v aktuální éře je přestupný rok. (Zděděno od Calendar) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32) |
Vrátí hodnotu nastavenou DateTime na zadané datum a čas v zadané éře. |
| ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) |
Vrátí hodnotu nastavenou DateTime na zadané datum a čas v aktuální éře. (Zděděno od Calendar) |
| ToFourDigitYear(Int32) |
Převede zadaný rok na čtyřciferný rok pomocí TwoDigitYearMax vlastnosti k určení příslušného století. |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |