Freigeben über


GregorianCalendar Klasse

Definition

Stellt den gregorianischen Kalender dar.

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
Vererbung
GregorianCalendar
Attribute

Beispiele

Das folgende Codebeispiel zeigt, dass DateTimeFormatInfo die Interpunktion im Namen der Ära ignoriert wird, nur wenn der Kalender gregorianisch ist und die Kultur den Namen der Ära "A.D." verwendet.

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

Hinweise

Der gregorianische Kalender erkennt zwei Epochen: B.C. oder B.C.E., und A.D. oder C.E. Diese Implementierung der GregorianCalendar Klasse erkennt nur die aktuelle Ära (A.D. oder C.E.).

Hinweis

Informationen zur Verwendung der GregorianCalendar Klasse und der anderen Kalenderklassen im .NET Framework finden Sie unter Arbeiten mit Kalendern.

Ein Schaltjahr im gregorianischen Kalender wird als Jahr definiert, das gleichmäßig durch 4 divisierbar ist, es sei denn, es ist durch 100 teilbar. Jahre, die durch 400 dividierbar sind, sind jedoch Schaltjahre. Beispielsweise war das Jahr 1900 kein Schaltjahr, sondern das Jahr 2000. Ein gemeinsames Jahr hat 365 Tage und ein Schaltjahr hat 366 Tage.

Der gregorianische Kalender hat 12 Monate mit jeweils 28 bis 31 Tagen: Januar (31 Tage), Februar (28 oder 29 Tage), März (31 Tage), April (30 Tage), Mai (30 Tage) 31 Tage), Juni (30 Tage), Juli (31 Tage), August (31 Tage), September (30 Tage), Oktober (31 Tage), November (30 Tage) und Dezember (31 Tage). Februar hat 29 Tage während Schaltjahren und 28 in gemeinsamen Jahren.

Von Bedeutung

Standardmäßig geben alle DateTime Werte DateTimeOffset Datums- und Uhrzeitangaben im gregorianischen Kalender aus.

Der gregorianische Kalender wurde als Ersatz für den julianischen Kalender (dargestellt durch die JulianCalendar Klasse) entwickelt und wurde erstmals am 15. Oktober 1582 in einer kleinen Anzahl von Kulturen eingeführt. Wenn Sie mit historischen Datumsangaben arbeiten, die vor der Einführung der Kultur des gregorianischen Kalenders stehen, sollten Sie den ursprünglichen Kalender verwenden, wenn er im .NET Framework verfügbar ist. Beispielsweise änderte sich Dänemark vom julianischen Kalender zum gregorianischen Kalender am 19. Februar (im julianischen Kalender) oder 1. März (im gregorianischen Kalender) von 1700. In diesem Fall sollten Sie für Datumsangaben vor der Einführung des gregorianischen Kalenders den julianischen Kalender verwenden. Beachten Sie jedoch, dass keine Kultur systeminterne Unterstützung für den JulianCalendar Kurs bietet. Sie müssen die JulianCalendar Klasse als eigenständigen Kalender verwenden. Weitere Informationen finden Sie unter Arbeiten mit Kalendern.

Das folgende Beispiel zeigt, dass der julianische Kalender am 18. Februar 1700, der letzte Tag, an dem der julianische Kalender offiziell in Dänemark verwendet wurde, einen Tag vor dem 1. März 1700 im gregorianischen Kalender ist.

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

Jede CultureInfo unterstützt eine Reihe von Kalendern. Die Calendar Eigenschaft gibt den Standardkalender für die Kultur zurück, und die Eigenschaft gibt ein Array zurück, das OptionalCalendars alle von der Kultur unterstützten Kalender enthält. Um den von einer Anwendung CultureInfoverwendeten Kalender zu ändern, kann die Anwendung die Calendar Eigenschaft auf eine neue Calendarfestlegen.

GetEra ignoriert Interpunktionszeichen in abgekürzten Erachennamen, nur wenn die GregorianCalendar Auswahl erfolgt DateTimeFormatInfo.Calendar und die Kultur "A.D." als Name der Ära verwendet, d. h. "A.D." entspricht "AD".

Konstruktoren

Name Beschreibung
GregorianCalendar()

Initialisiert eine neue Instanz der GregorianCalendar Klasse mithilfe des Standardwerts GregorianCalendarTypes .

GregorianCalendar(GregorianCalendarTypes)

Initialisiert eine neue Instanz der GregorianCalendar Klasse mithilfe des angegebenen GregorianCalendarTypes Werts.

Felder

Name Beschreibung
ADEra

Stellt die aktuelle Ära dar. Dieses Feld ist konstant.

CurrentEra

Stellt die aktuelle Ära des aktuellen Kalenders dar. Der Wert dieses Felds ist 0.

(Geerbt von Calendar)

Eigenschaften

Name Beschreibung
AlgorithmType

Ruft einen Wert ab, der angibt, ob der aktuelle Kalender sonnenbasiert, mondbasiert oder eine Kombination aus beiden ist.

CalendarType

Dient zum Abrufen oder Festlegen des Werts, der GregorianCalendarTypes die Sprachversion der aktuellen GregorianCalendar.

DaysInYearBeforeMinSupportedYear

Ruft die Anzahl der Tage im Jahr ab, die dem Jahr vorausgeht, das durch die MinSupportedDateTime Eigenschaft angegeben wird.

(Geerbt von Calendar)
Eras

Ruft die Liste der Epochen in der GregorianCalendar.

IsReadOnly

Ruft einen Wert ab, der angibt, ob dieses Calendar Objekt schreibgeschützt ist.

(Geerbt von Calendar)
MaxSupportedDateTime

Ruft das neueste Datum und die uhrzeit, das GregorianCalendar vom Typ unterstützt wird.

MinSupportedDateTime

Ruft das früheste Datum und die früheste Uhrzeit ab, die GregorianCalendar vom Typ unterstützt wird.

TwoDigitYearMax

Ruft das letzte Jahr eines 100-Jahres-Bereichs ab, der durch ein 2-stelliges Jahr dargestellt werden kann, oder legt diesen fest.

Methoden

Name Beschreibung
AddDays(DateTime, Int32)

Gibt einen DateTime Wert zurück, der die angegebene Anzahl von Tagen außerhalb des angegebenen DateTimeWerts darstellt.

(Geerbt von Calendar)
AddHours(DateTime, Int32)

Gibt einen DateTime Wert zurück, der die angegebene Anzahl von Stunden außerhalb des angegebenen DateTimeWerts darstellt.

(Geerbt von Calendar)
AddMilliseconds(DateTime, Double)

Gibt einen DateTime Wert zurück, der die angegebene Anzahl von Millisekunden außerhalb des angegebenen DateTimeWerts darstellt.

(Geerbt von Calendar)
AddMinutes(DateTime, Int32)

Gibt einen DateTime Wert zurück, der die angegebene Anzahl von Minuten außerhalb des angegebenen DateTimeWerts darstellt.

(Geerbt von Calendar)
AddMonths(DateTime, Int32)

Gibt einen DateTime Wert zurück, der die angegebene Anzahl von Monaten außerhalb des angegebenen DateTimeWerts darstellt.

AddSeconds(DateTime, Int32)

Gibt einen DateTime Wert zurück, der die angegebene Anzahl von Sekunden vom angegebenen DateTimeWert entfernt ist.

(Geerbt von Calendar)
AddWeeks(DateTime, Int32)

Gibt einen DateTime Wert zurück, der die angegebene Anzahl von Wochen außerhalb des angegebenen DateTimeWerts darstellt.

AddWeeks(DateTime, Int32)

Gibt einen DateTime Wert zurück, der die angegebene Anzahl von Wochen außerhalb des angegebenen DateTimeWerts darstellt.

(Geerbt von Calendar)
AddYears(DateTime, Int32)

Gibt eine DateTime angegebene Anzahl von Jahren zurück, die vom angegebenen Wert DateTimeentfernt sind.

Clone()

Erstellt ein neues Objekt, das eine Kopie des aktuellen Calendar Objekts ist.

(Geerbt von Calendar)
Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetDayOfMonth(DateTime)

Gibt den Tag des Monats in der angegebenen DateTimezurück.

GetDayOfWeek(DateTime)

Gibt den Wochentag in der angegebenen DateTimeZurück.

GetDayOfYear(DateTime)

Gibt den Tag des Jahres in der angegebenen zurück DateTime.

GetDaysInMonth(Int32, Int32, Int32)

Gibt die Anzahl der Tage im angegebenen Monat im angegebenen Jahr in der angegebenen Ära zurück.

GetDaysInMonth(Int32, Int32)

Gibt die Anzahl der Tage im angegebenen Monat und Jahr der aktuellen Ära zurück.

(Geerbt von Calendar)
GetDaysInYear(Int32, Int32)

Gibt die Anzahl der Tage im angegebenen Jahr in der angegebenen Ära zurück.

GetDaysInYear(Int32)

Gibt die Anzahl der Tage im angegebenen Jahr der aktuellen Ära zurück.

(Geerbt von Calendar)
GetEra(DateTime)

Gibt die Ära in der angegebenen DateTimezurück.

GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetHour(DateTime)

Gibt den Stundenwert in der angegebenen .DateTime

(Geerbt von Calendar)
GetLeapMonth(Int32, Int32)

Berechnet den Schaltmonat für ein angegebenes Jahr und eine angegebene Ära.

GetLeapMonth(Int32)

Berechnet den Schaltmonat für ein angegebenes Jahr.

(Geerbt von Calendar)
GetMilliseconds(DateTime)

Gibt den Millisekundenwert im angegebenen DateTimeWert zurück.

(Geerbt von Calendar)
GetMinute(DateTime)

Gibt den Minutenwert im angegebenen DateTimeWert zurück.

(Geerbt von Calendar)
GetMonth(DateTime)

Gibt den Monat in der angegebenen Zurück DateTime.

GetMonthsInYear(Int32, Int32)

Gibt die Anzahl der Monate im angegebenen Jahr in der angegebenen Ära zurück.

GetMonthsInYear(Int32)

Gibt die Anzahl der Monate im angegebenen Jahr in der aktuellen Ära zurück.

(Geerbt von Calendar)
GetSecond(DateTime)

Gibt den Sekundenwert in der angegebenen DateTimeZurück.

(Geerbt von Calendar)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek)

Gibt die Woche des Jahres zurück, die das Datum im angegebenen DateTime Objekt enthält.

GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek)

Gibt die Woche des Jahres zurück, die das Datum im angegebenen DateTime Wert enthält.

(Geerbt von Calendar)
GetYear(DateTime)

Gibt das Jahr in der angegebenen Zurück DateTime.

IsLeapDay(Int32, Int32, Int32, Int32)

Bestimmt, ob das angegebene Datum in der angegebenen Ära ein Schalttag ist.

IsLeapDay(Int32, Int32, Int32)

Bestimmt, ob das angegebene Datum in der aktuellen Ära ein Schalttag ist.

(Geerbt von Calendar)
IsLeapMonth(Int32, Int32, Int32)

Bestimmt, ob der angegebene Monat im angegebenen Jahr in der angegebenen Ära ein Schaltmonat ist.

IsLeapMonth(Int32, Int32)

Bestimmt, ob der angegebene Monat im angegebenen Jahr in der aktuellen Ära ein Schaltmonat ist.

(Geerbt von Calendar)
IsLeapYear(Int32, Int32)

Bestimmt, ob das angegebene Jahr in der angegebenen Ära ein Schaltjahr ist.

IsLeapYear(Int32)

Bestimmt, ob das angegebene Jahr in der aktuellen Ära ein Schaltjahr ist.

(Geerbt von Calendar)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Gibt einen DateTime Wert zurück, der auf das angegebene Datum und die angegebene Uhrzeit in der angegebenen Ära festgelegt ist.

ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Gibt einen DateTime Wert zurück, der auf das angegebene Datum und die angegebene Uhrzeit in der aktuellen Ära festgelegt ist.

(Geerbt von Calendar)
ToFourDigitYear(Int32)

Wandelt das angegebene Jahr mithilfe der TwoDigitYearMax Eigenschaft in ein vierstelliges Jahr um, um das entsprechende Jahrhundert zu bestimmen.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen