Partager via


Calendar Classe

Définition

Représente des unités de division du temps, telles que les semaines, les mois et les années.

public ref class Calendar abstract
public ref class Calendar abstract : ICloneable
public abstract class Calendar
public abstract class Calendar : ICloneable
[System.Serializable]
public abstract class Calendar
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Calendar : ICloneable
type Calendar = class
type Calendar = class
    interface ICloneable
[<System.Serializable>]
type Calendar = class
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Calendar = class
    interface ICloneable
Public MustInherit Class Calendar
Public MustInherit Class Calendar
Implements ICloneable
Héritage
Calendar
Dérivé
Attributs
Implémente

Exemples

L’exemple de code suivant illustre les membres de la Calendar classe .

using namespace System;
using namespace System::Globalization;
void DisplayValues( Calendar^ myCal, DateTime myDT )
{
   Console::WriteLine( "   Era: {0}", myCal->GetEra( myDT ) );
   Console::WriteLine( "   Year: {0}", myCal->GetYear( myDT ) );
   Console::WriteLine( "   Month: {0}", myCal->GetMonth( myDT ) );
   Console::WriteLine( "   DayOfYear: {0}", myCal->GetDayOfYear( myDT ) );
   Console::WriteLine( "   DayOfMonth: {0}", myCal->GetDayOfMonth( myDT ) );
   Console::WriteLine( "   DayOfWeek: {0}", myCal->GetDayOfWeek( myDT ) );
   Console::WriteLine( "   Hour: {0}", myCal->GetHour( myDT ) );
   Console::WriteLine( "   Minute: {0}", myCal->GetMinute( myDT ) );
   Console::WriteLine( "   Second: {0}", myCal->GetSecond( myDT ) );
   Console::WriteLine( "   Milliseconds: {0}", myCal->GetMilliseconds( myDT ) );
   Console::WriteLine();
}

int main()
{
   
   // Sets a DateTime to April 3, 2002 of the Gregorian calendar.
   DateTime myDT = DateTime(2002,4,3,gcnew GregorianCalendar);
   
   // Uses the default calendar of the InvariantCulture.
   Calendar^ myCal = CultureInfo::InvariantCulture->Calendar;
   
   // Displays the values of the DateTime.
   Console::WriteLine( "April 3, 2002 of the Gregorian calendar:" );
   DisplayValues( myCal, myDT );
   
   // Adds 5 to every component of the DateTime.
   myDT = myCal->AddYears( myDT, 5 );
   myDT = myCal->AddMonths( myDT, 5 );
   myDT = myCal->AddWeeks( myDT, 5 );
   myDT = myCal->AddDays( myDT, 5 );
   myDT = myCal->AddHours( myDT, 5 );
   myDT = myCal->AddMinutes( myDT, 5 );
   myDT = myCal->AddSeconds( myDT, 5 );
   myDT = myCal->AddMilliseconds( myDT, 5 );
   
   // Displays the values of the DateTime.
   Console::WriteLine( "After adding 5 to each component of the DateTime:" );
   DisplayValues( myCal, myDT );
}

/*
This code produces the following output.

April 3, 2002 of the Gregorian calendar:
Era:          1
Year:         2002
Month:        4
DayOfYear:    93
DayOfMonth:   3
DayOfWeek:    Wednesday
Hour:         0
Minute:       0
Second:       0
Milliseconds: 0

After adding 5 to each component of the DateTime:
Era:          1
Year:         2007
Month:        10
DayOfYear:    286
DayOfMonth:   13
DayOfWeek:    Saturday
Hour:         5
Minute:       5
Second:       5
Milliseconds: 5

*/
using System;
using System.Globalization;

public class SamplesCalendar  {

   public static void Main()  {

      // Sets a DateTime to April 3, 2002 of the Gregorian calendar.
      DateTime myDT = new DateTime( 2002, 4, 3, new GregorianCalendar() );

      // Uses the default calendar of the InvariantCulture.
      Calendar myCal = CultureInfo.InvariantCulture.Calendar;

      // Displays the values of the DateTime.
      Console.WriteLine( "April 3, 2002 of the Gregorian calendar:" );
      DisplayValues( myCal, myDT );

      // Adds 5 to every component of the DateTime.
      myDT = myCal.AddYears( myDT, 5 );
      myDT = myCal.AddMonths( myDT, 5 );
      myDT = myCal.AddWeeks( myDT, 5 );
      myDT = myCal.AddDays( myDT, 5 );
      myDT = myCal.AddHours( myDT, 5 );
      myDT = myCal.AddMinutes( myDT, 5 );
      myDT = myCal.AddSeconds( myDT, 5 );
      myDT = myCal.AddMilliseconds( myDT, 5 );

      // Displays the values of the DateTime.
      Console.WriteLine( "After adding 5 to each component of the DateTime:" );
      DisplayValues( myCal, myDT );
   }

   public static void DisplayValues( Calendar myCal, DateTime myDT )  {
      Console.WriteLine( "   Era:          {0}", myCal.GetEra( myDT ) );
      Console.WriteLine( "   Year:         {0}", myCal.GetYear( myDT ) );
      Console.WriteLine( "   Month:        {0}", myCal.GetMonth( myDT ) );
      Console.WriteLine( "   DayOfYear:    {0}", myCal.GetDayOfYear( myDT ) );
      Console.WriteLine( "   DayOfMonth:   {0}", myCal.GetDayOfMonth( myDT ) );
      Console.WriteLine( "   DayOfWeek:    {0}", myCal.GetDayOfWeek( myDT ) );
      Console.WriteLine( "   Hour:         {0}", myCal.GetHour( myDT ) );
      Console.WriteLine( "   Minute:       {0}", myCal.GetMinute( myDT ) );
      Console.WriteLine( "   Second:       {0}", myCal.GetSecond( myDT ) );
      Console.WriteLine( "   Milliseconds: {0}", myCal.GetMilliseconds( myDT ) );
      Console.WriteLine();
   }
}


/*
This code produces the following output.

April 3, 2002 of the Gregorian calendar:
   Era:          1
   Year:         2002
   Month:        4
   DayOfYear:    93
   DayOfMonth:   3
   DayOfWeek:    Wednesday
   Hour:         0
   Minute:       0
   Second:       0
   Milliseconds: 0

After adding 5 to each component of the DateTime:
   Era:          1
   Year:         2007
   Month:        10
   DayOfYear:    286
   DayOfMonth:   13
   DayOfWeek:    Saturday
   Hour:         5
   Minute:       5
   Second:       5
   Milliseconds: 5

*/
Imports System.Globalization


Public Class SamplesCalendar   

   Public Shared Sub Main()

      ' Sets a DateTime to April 3, 2002 of the Gregorian calendar.
      Dim myDT As New DateTime(2002, 4, 3, New GregorianCalendar())

      ' Uses the default calendar of the InvariantCulture.
      Dim myCal As Calendar = CultureInfo.InvariantCulture.Calendar

      ' Displays the values of the DateTime.
      Console.WriteLine("April 3, 2002 of the Gregorian calendar:")
      DisplayValues(myCal, myDT)

      ' Adds 5 to every component of the DateTime.
      myDT = myCal.AddYears(myDT, 5)
      myDT = myCal.AddMonths(myDT, 5)
      myDT = myCal.AddWeeks(myDT, 5)
      myDT = myCal.AddDays(myDT, 5)
      myDT = myCal.AddHours(myDT, 5)
      myDT = myCal.AddMinutes(myDT, 5)
      myDT = myCal.AddSeconds(myDT, 5)
      myDT = myCal.AddMilliseconds(myDT, 5)

      ' Displays the values of the DateTime.
      Console.WriteLine("After adding 5 to each component of the DateTime:")
      DisplayValues(myCal, myDT)

   End Sub

   Public Shared Sub DisplayValues(myCal As Calendar, myDT As DateTime)
      Console.WriteLine("   Era:          {0}", myCal.GetEra(myDT))
      Console.WriteLine("   Year:         {0}", myCal.GetYear(myDT))
      Console.WriteLine("   Month:        {0}", myCal.GetMonth(myDT))
      Console.WriteLine("   DayOfYear:    {0}", myCal.GetDayOfYear(myDT))
      Console.WriteLine("   DayOfMonth:   {0}", myCal.GetDayOfMonth(myDT))
      Console.WriteLine("   DayOfWeek:    {0}", myCal.GetDayOfWeek(myDT))
      Console.WriteLine("   Hour:         {0}", myCal.GetHour(myDT))
      Console.WriteLine("   Minute:       {0}", myCal.GetMinute(myDT))
      Console.WriteLine("   Second:       {0}", myCal.GetSecond(myDT))
      Console.WriteLine("   Milliseconds: {0}", myCal.GetMilliseconds(myDT))
      Console.WriteLine()
   End Sub

End Class


'This code produces the following output.
'
'April 3, 2002 of the Gregorian calendar:
'   Era:          1
'   Year:         2002
'   Month:        4
'   DayOfYear:    93
'   DayOfMonth:   3
'   DayOfWeek:    Wednesday
'   Hour:         0
'   Minute:       0
'   Second:       0
'   Milliseconds: 0
'
'After adding 5 to each component of the DateTime:
'   Era:          1
'   Year:         2007
'   Month:        10
'   DayOfYear:    286
'   DayOfMonth:   13
'   DayOfWeek:    Saturday
'   Hour:         5
'   Minute:       5
'   Second:       5
'   Milliseconds: 5

Remarques

Un calendrier divise le temps en unités, telles que les semaines, les mois et les années. Le nombre, la longueur et le début des divisions varient dans chaque calendrier.

Notes

Pour plus d’informations sur l’utilisation des classes de calendrier dans .NET, consultez Utilisation des calendriers.

Tout moment dans le temps peut être représenté sous la forme d’un ensemble de valeurs numériques à l’aide d’un calendrier particulier. Par exemple, un équinoxe vernal s’est produit à (1999, 3, 20, 8, 46, 0, 0,0) dans le calendrier grégorien, c’est-à-dire le 20 mars 1999 C.E. à 8 :46 :00 :0.0. Une implémentation de Calendar peut mapper n’importe quelle date dans la plage d’un calendrier spécifique à un ensemble similaire de valeurs numériques, et DateTime peut mapper ces jeux de valeurs numériques à une représentation textuelle à l’aide des informations de Calendar et DateTimeFormatInfo. La représentation textuelle peut être sensible à la culture, par exemple « 8 :46 AM 20 mars 1999 AD » pour la culture en-US, ou non sensible à la culture, par exemple, « 1999-03-20T08 :46 :00 » au format ISO 8601.

Une Calendar implémentation peut définir une ou plusieurs ères. La Calendar classe identifie les ères en tant qu’entiers énumérés, où l’ère actuelle (CurrentEra) a la valeur 0.

Important

Les ères des calendriers japonais sont basées sur le règne de l’empereur et sont donc amenées à changer. Par exemple, le 1 mai 2019 a marqué le début de l’ère Reiwa dans JapaneseCalendar et JapaneseLunisolarCalendar. Ce changement d’ère affecte toutes les applications qui utilisent ces calendriers. Pour plus d’informations et pour déterminer si vos applications sont affectées, consultez Gestion d’une nouvelle ère dans le calendrier japonais dans .NET. Pour plus d’informations sur le test de vos applications sur des systèmes Windows afin de garantir leur préparation au changement d’ère, consultez Préparer votre application pour le changement d’ère japonaise. Pour connaître les fonctionnalités de .NET qui prennent en charge les calendriers avec plusieurs ères et pour connaître les meilleures pratiques lors de l’utilisation de calendriers qui prennent en charge plusieurs ères, consultez Utilisation d’ères.

Pour compenser la différence entre l’année civile et l’heure réelle de rotation de la terre autour du soleil ou l’heure réelle de rotation de la lune autour de la Terre, une année bissextile a un nombre de jours différent d’une année civile standard. Chaque Calendar implémentation définit les années bissextiles différemment.

Par souci de cohérence, la valeur 1 est attribuée à la première unité de chaque intervalle (le premier mois, par exemple).

L’espace System.Globalization de noms comprend les implémentations suivantes Calendar :

Constructeurs

Calendar()

Initialise une nouvelle instance de la classe Calendar.

Champs

CurrentEra

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

Propriétés

AlgorithmType

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

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.

Eras

En cas de substitution dans une classe dérivée, obtient la liste des ères du calendrier en cours.

IsReadOnly

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

MaxSupportedDateTime

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

MinSupportedDateTime

Obtient les premières date et heure prises en charge par cet objet 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é.

AddHours(DateTime, Int32)

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

AddMilliseconds(DateTime, Double)

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

AddMinutes(DateTime, Int32)

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

AddMonths(DateTime, Int32)

En cas de substitution dans une classe dérivée, retourne un DateTime qui correspond au 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é.

AddWeeks(DateTime, Int32)

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

AddYears(DateTime, Int32)

En cas de substitution dans une classe dérivée, retourne un DateTime qui correspond au nombre d’années spécifié jusqu’au DateTime spécifié.

Clone()

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

Equals(Object)

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

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

En cas de substitution dans une classe dérivée, retourne le jour du mois du DateTime spécifié.

GetDayOfWeek(DateTime)

En cas de substitution dans une classe dérivée, retourne le jour de la semaine du DateTime spécifié.

GetDayOfYear(DateTime)

En cas de substitution dans une classe dérivée, retourne le jour de l’année du 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.

GetDaysInMonth(Int32, Int32, Int32)

En cas de substitution dans une classe dérivée, retourne le nombre de jours du mois, de l’année et de l’ère spécifiés.

GetDaysInYear(Int32)

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

GetDaysInYear(Int32, Int32)

En cas de substitution dans une classe dérivée, retourne le nombre de jours de l’année et de l’ère spécifiées.

GetEra(DateTime)

En cas de substitution dans une classe dérivée, 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é.

GetLeapMonth(Int32)

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

GetLeapMonth(Int32, Int32)

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

GetMilliseconds(DateTime)

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

GetMinute(DateTime)

Retourne les minutes du DateTime spécifié.

GetMonth(DateTime)

En cas de substitution dans une classe dérivée, 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.

GetMonthsInYear(Int32, Int32)

En cas de substitution dans une classe dérivée, retourne le nombre de mois de l’année spécifiée dans l’ère spécifiée.

GetSecond(DateTime)

Retourne les secondes du DateTime spécifié.

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 la valeur DateTime spécifiée.

GetYear(DateTime)

En cas de substitution dans une classe dérivée, retourne l’année du 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.

IsLeapDay(Int32, Int32, Int32, Int32)

En cas de substitution dans une classe dérivée, détermine si la date spécifiée dans 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.

IsLeapMonth(Int32, Int32, Int32)

En cas de substitution dans une classe dérivée, détermine si le mois de l’année spécifiée dans 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.

IsLeapYear(Int32, Int32)

En cas de substitution dans une classe dérivée, détermine si l’année spécifiée dans l’ère spécifiée est une année bissextile.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

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

Retourne une version en lecture seule de l’objet Calendar spécifié.

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

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

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

En cas de substitution dans une classe dérivée, retourne un DateTime correspondant à la date et à l’heure spécifiées pour 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