GregorianCalendar Classe

Définition

Représente le calendrier grégorien.

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
Héritage
GregorianCalendar
Attributs

Exemples

L’exemple de code suivant montre que DateTimeFormatInfo ignore la ponctuation dans le nom de l’ère, uniquement si le calendrier est grégorien et que la culture utilise le nom d’ère « A.D. ».

using namespace System;
using namespace System::Globalization;
using namespace System::Collections;
int 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" );
   IEnumerator^ en = CultureInfo::GetCultures( CultureTypes::SpecificCultures )->GetEnumerator();
   while ( en->MoveNext() )
   {
      CultureInfo^ myCI = safe_cast<CultureInfo^>(en->Current);
      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

*/
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

Remarques

Le calendrier grégorien reconnaît deux époques : C.B. ou C.C.E. et A.D. ou C.E. Cette implémentation de la GregorianCalendar classe reconnaît uniquement l’ère actuelle (A.D. ou C.E.).

Notes

Pour plus d’informations sur l’utilisation de la GregorianCalendar classe et des autres classes de calendrier dans le .NET Framework, consultez Utilisation des calendriers.

Une année bissextile dans le calendrier grégorien est définie comme une année uniformément divisible par 4, sauf si elle est divisible par 100. Cependant, les années qui sont divisibles par 400 sont des années bissextiles. Par exemple, l’année 1900 n’était pas une année bissextile, mais l’année 2000. Une année commune a 365 jours et une année bissextile a 366 jours.

Le calendrier grégorien a 12 mois avec 28 à 31 jours chacun : janvier (31 jours), février (28 ou 29 jours), mars (31 jours), avril (30 jours), mai (30 jours) 31 jours), juin (30 jours), juillet (31 jours), août (31 jours), septembre (30 jours), octobre (31 jours), novembre (30 jours) et décembre (31 jours). Février a 29 jours pendant les années bissextiles et 28 pendant les années communes.

Important

Par défaut, toutes les DateTime valeurs et DateTimeOffset expriment des dates et des heures dans le calendrier grégorien.

Le calendrier grégorien a été développé en remplacement du calendrier julien (qui est représenté par la JulianCalendar classe) et a été introduit pour la première fois dans un petit nombre de cultures le 15 octobre 1582. Lorsque vous utilisez des dates historiques qui précèdent l’adoption du calendrier grégorien par une culture, vous devez utiliser le calendrier d’origine s’il est disponible dans le .NET Framework. Par exemple, le Danemark est passé du calendrier julien au calendrier grégorien le 19 février (dans le calendrier julien) ou le 1er mars (dans le calendrier grégorien) de 1700. Dans ce cas, pour les dates antérieures à l’adoption du calendrier grégorien, vous devez utiliser le calendrier julien. Toutefois, notez qu’aucune culture n’offre de prise en charge intrinsèque pour la JulianCalendar classe . Vous devez utiliser la JulianCalendar classe comme calendrier autonome. Pour plus d’informations, consultez Utilisation des calendriers.

L’exemple suivant illustre que le 18 février 1700 dans le calendrier julien, qui est le dernier jour où le calendrier julien a été officiellement utilisé au Danemark, est un jour avant le 1er mars 1700 dans le calendrier grégorien.

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

Chaque CultureInfo prend en charge un ensemble de calendriers. La Calendar propriété retourne le calendrier par défaut pour la culture, et la OptionalCalendars propriété renvoie un tableau contenant tous les calendriers pris en charge par la culture. Pour modifier le calendrier utilisé par un CultureInfo, l’application peut définir la Calendar propriété sur un nouveau Calendar.

GetEra ignore la ponctuation dans les noms d’ère abrégés, uniquement si est GregorianCalendar sélectionné dans DateTimeFormatInfo.Calendar et que la culture utilise « A.D. » comme nom d’ère, c’est-à-dire que « A.D. » est équivalent à « AD ».

Constructeurs

GregorianCalendar()

Initialise une nouvelle instance de la classe GregorianCalendar à l’aide de la valeur GregorianCalendarTypes par défaut.

GregorianCalendar(GregorianCalendarTypes)

Initialise une nouvelle instance de la classe GregorianCalendar avec la valeur GregorianCalendarTypes spécifiée.

Champs

ADEra

Représente l'ère en cours. Ce champ est constant.

CurrentEra

Représente l’ère actuelle du calendrier en cours. La valeur de ce champ est 0.

(Hérité de Calendar)

Propriétés

AlgorithmType

Obtient une valeur qui indique si le calendrier actuel est solaire, lunaire, ou une combinaison des deux.

AlgorithmType

Obtient une valeur qui indique si le calendrier actuel est solaire, lunaire, ou une combinaison des deux.

(Hérité de Calendar)
CalendarType

Obtient ou définit la valeur GregorianCalendarTypes indiquant la version linguistique du GregorianCalendar en cours.

DaysInYearBeforeMinSupportedYear

Obtient le nombre de jours dans l’année qui précède l’année spécifiée par la propriété MinSupportedDateTime.

(Hérité de Calendar)
Eras

Obtient la liste des ères dans GregorianCalendar.

IsReadOnly

Obtient une valeur qui indique si cet objet Calendar est en lecture seule.

(Hérité de Calendar)
MaxSupportedDateTime

Obtient les dernières date et heure prises en charge par le type GregorianCalendar.

MaxSupportedDateTime

Obtient les dernières date et heure prises en charge par cet objet Calendar.

(Hérité de Calendar)
MinSupportedDateTime

Obtient les premières date et heure prises en charge par le type GregorianCalendar.

MinSupportedDateTime

Obtient les premières date et heure prises en charge par cet objet Calendar.

(Hérité de Calendar)
TwoDigitYearMax

Obtient ou définit la dernière année d'une plage de 100 ans pouvant être représentée par une année à 2 chiffres.

Méthodes

AddDays(DateTime, Int32)

Retourne un DateTime qui est le nombre de jours spécifié jusqu’au DateTime spécifié.

(Hérité de Calendar)
AddHours(DateTime, Int32)

Retourne un DateTime qui représente le nombre d’heures jusqu’au DateTime spécifié.

(Hérité de Calendar)
AddMilliseconds(DateTime, Double)

Retourne un DateTime qui correspond au nombre de millisecondes spécifié jusqu’au DateTime spécifié.

(Hérité de Calendar)
AddMinutes(DateTime, Int32)

Retourne un DateTime qui correspond au nombre de minutes jusqu’au DateTime spécifié.

(Hérité de Calendar)
AddMonths(DateTime, Int32)

Retourne un DateTime qui est le nombre de mois spécifié jusqu’au DateTime spécifié.

AddSeconds(DateTime, Int32)

Retourne un DateTime qui correspond au nombre de secondes spécifié jusqu’au DateTime spécifié.

(Hérité de Calendar)
AddWeeks(DateTime, Int32)

Retourne un DateTime qui correspond au nombre de semaines spécifié jusqu’au DateTime spécifié.

AddWeeks(DateTime, Int32)

Retourne un DateTime qui correspond au nombre de semaines spécifié jusqu’au DateTime spécifié.

(Hérité de Calendar)
AddYears(DateTime, Int32)

Retourne un DateTime qui est le nombre d’années spécifié jusqu’au DateTime spécifié.

Clone()

Crée un objet qui est une copie de l’objet Calendaractuel.

(Hérité de Calendar)
Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetDayOfMonth(DateTime)

Retourne le jour du mois du DateTime spécifié.

GetDayOfWeek(DateTime)

Retourne le jour de la semaine du DateTime spécifié.

GetDayOfYear(DateTime)

Retourne le jour de l’année dans le DateTime spécifié.

GetDaysInMonth(Int32, Int32)

Retourne le nombre de jours dans le mois et l’année spécifiés de l’ère actuelle.

(Hérité de Calendar)
GetDaysInMonth(Int32, Int32, Int32)

Retourne le nombre de jours dans le mois spécifié de l’année spécifiée de l’ère spécifiée.

GetDaysInYear(Int32)

Retourne le nombre de jours de l’année spécifiée de l’ère actuelle.

(Hérité de Calendar)
GetDaysInYear(Int32, Int32)

Retourne le nombre de jours dans l’année spécifiée de l’ère spécifiée.

GetEra(DateTime)

Retourne l’ère du DateTime spécifié.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetHour(DateTime)

Retourne l’heure du DateTime spécifié.

(Hérité de Calendar)
GetLeapMonth(Int32)

Calcule le mois d’une année bissextile d’une spécifiée.

(Hérité de Calendar)
GetLeapMonth(Int32, Int32)

Calcule le mois d’une année bissextile d’une année et d’une ère spécifiées.

GetLeapMonth(Int32, Int32)

Calcule le mois d’une année bissextile d’une année et d’une ère spécifiées.

(Hérité de Calendar)
GetMilliseconds(DateTime)

Retourne la valeur en millisecondes du DateTime spécifié.

(Hérité de Calendar)
GetMinute(DateTime)

Retourne les minutes du DateTime spécifié.

(Hérité de Calendar)
GetMonth(DateTime)

Retourne le mois du DateTime spécifié.

GetMonthsInYear(Int32)

Retourne le nombre de mois de l’année spécifiée dans l’ère actuelle.

(Hérité de Calendar)
GetMonthsInYear(Int32, Int32)

Retourne le nombre de mois dans l’année spécifiée de l’ère spécifiée.

GetSecond(DateTime)

Retourne les secondes du DateTime spécifié.

(Hérité de Calendar)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek)

Retourne la semaine de l'année qui contient la date de l'objet DateTime spécifié.

GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek)

Retourne la semaine de l’année qui contient la date de la valeur DateTime spécifiée.

(Hérité de Calendar)
GetYear(DateTime)

Retourne l’année dans le DateTime spécifié.

IsLeapDay(Int32, Int32, Int32)

Détermine si la date spécifiée dans l’ère en cours est une année bissextile.

(Hérité de Calendar)
IsLeapDay(Int32, Int32, Int32, Int32)

Détermine si la date spécifiée de l’ère spécifiée est un jour bissextile.

IsLeapMonth(Int32, Int32)

Détermine si le mois spécifié de l’année spécifiée dans l’ère en cours est un mois bissextile.

(Hérité de Calendar)
IsLeapMonth(Int32, Int32, Int32)

Détermine si le mois spécifié dans l’année spécifiée de l’ère spécifiée est un mois bissextile.

IsLeapYear(Int32)

Détermine si l’année spécifiée dans l’ère actuelle est une année bissextile.

(Hérité de Calendar)
IsLeapYear(Int32, Int32)

Détermine si l'année spécifiée de l'ère spécifiée est une année bissextile.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Retourne un DateTime correspondant à la date et à l’heure spécifiées pour l’ère actuelle.

(Hérité de Calendar)
ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Retourne un DateTime auquel sont affectées la date et l’heure spécifiées dans l’ère spécifiée.

ToFourDigitYear(Int32)

Convertit l’année spécifiée en une année à quatre chiffres en utilisant la propriété TwoDigitYearMax pour déterminer le siècle approprié.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Voir aussi