JapaneseCalendar.GetEra(DateTime) Metodo

Definizione

Restituisce l'era nel valore DateTime specificato.Returns the era in the specified DateTime.

public:
 override int GetEra(DateTime time);
public override int GetEra (DateTime time);
override this.GetEra : DateTime -> int
Public Overrides Function GetEra (time As DateTime) As Integer

Parametri

time
DateTime

Valore DateTime da leggere.The DateTime to read.

Restituisce

Intero che rappresenta l'era nel valore DateTime specificato.An integer that represents the era in the specified DateTime.

Eccezioni

Il valore DateTime risultante non è compreso nell’intervallo supportato.The resulting DateTime is outside the supported range.

Esempio

Nell'esempio seguente vengono visualizzati i valori di diversi componenti di un DateTime in termini di calendario giapponese.The following example displays the values of several components of a DateTime in terms of the Japanese calendar.

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();
}

int main()
{
   
   // Sets a DateTime to April 3, 2002 of the Gregorian calendar.
   DateTime myDT = DateTime(2002,4,3,gcnew GregorianCalendar);
   
   // Creates an instance of the JapaneseCalendar.
   JapaneseCalendar^ myCal = gcnew JapaneseCalendar;
   
   // Displays the values of the DateTime.
   Console::WriteLine( "April 3, 2002 of the Gregorian calendar equals the following in the Japanese calendar:" );
   DisplayValues( myCal, myDT );
   
   // Adds two years and ten months.
   myDT = myCal->AddYears( myDT, 2 );
   myDT = myCal->AddMonths( myDT, 10 );
   
   // Displays the values of the DateTime.
   Console::WriteLine( "After adding two years and ten months:" );
   DisplayValues( myCal, myDT );
}

/*
This code produces the following output.

April 3, 2002 of the Gregorian calendar equals the following in the Japanese calendar:
   Era:        4
   Year:       14
   Month:      4
   DayOfYear:  93
   DayOfMonth: 3
   DayOfWeek:  Wednesday

After adding two years and ten months:
   Era:        4
   Year:       17
   Month:      2
   DayOfYear:  34
   DayOfMonth: 3
   DayOfWeek:  Thursday

*/
using System;
using System.Globalization;

public class SamplesJapaneseCalendar  {

   public static void Main()  {

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

      // Creates an instance of the JapaneseCalendar.
      JapaneseCalendar myCal = new JapaneseCalendar();

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

      // Adds two years and ten months.
      myDT = myCal.AddYears( myDT, 2 );
      myDT = myCal.AddMonths( myDT, 10 );

      // Displays the values of the DateTime.
      Console.WriteLine( "After adding two years and ten months:" );
      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();
   }
}

/*
This code produces the following output.

April 3, 2002 of the Gregorian calendar equals the following in the Japanese calendar:
   Era:        4
   Year:       14
   Month:      4
   DayOfYear:  93
   DayOfMonth: 3
   DayOfWeek:  Wednesday

After adding two years and ten months:
   Era:        4
   Year:       17
   Month:      2
   DayOfYear:  34
   DayOfMonth: 3
   DayOfWeek:  Thursday

*/
Imports System.Globalization


Public Class SamplesJapaneseCalendar   

   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())

      ' Creates an instance of the JapaneseCalendar.
      Dim myCal As New JapaneseCalendar()

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

      ' Adds two years and ten months.
      myDT = myCal.AddYears(myDT, 2)
      myDT = myCal.AddMonths(myDT, 10)

      ' Displays the values of the DateTime.
      Console.WriteLine("After adding two years and ten months:")
      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()
   End Sub

End Class


'This code produces the following output.

'

'April 3, 2002 of the Gregorian calendar equals the following in the Japanese calendar:
'   Era:        4
'   Year:       14
'   Month:      4
'   DayOfYear:  93
'   DayOfMonth: 3
'   DayOfWeek:  Wednesday
'
'After adding two years and ten months:
'   Era:        4
'   Year:       17
'   Month:      2
'   DayOfYear:  34
'   DayOfMonth: 3
'   DayOfWeek:  Thursday

Commenti

Il calendario giapponese riconosce un'era per il Regno di ogni imperatore.The Japanese calendar recognizes one era for every emperor's reign. Le due ere più recenti sono l'era Heisei, a partire dall'anno del calendario gregoriano 1989 e l'era REIWA, a partire dall'anno del calendario gregoriano 2019.The two most recent eras are the Heisei era, beginning in the Gregorian calendar year 1989, and the Reiwa era, beginning in the Gregorian calendar year 2019. Il nome dell'era viene in genere visualizzato prima dell'anno.The era name is typically displayed before the year. Ad esempio, l'anno di calendario gregoriano 2001 è l'anno di calendario giapponese Heisei 13.For example, the Gregorian calendar year 2001 is the Japanese calendar year Heisei 13. Si noti che il primo anno di un'era denominato "Gannen".Note that the first year of an era is called "Gannen." L'anno di calendario gregoriano 1989, pertanto, è stato l'anno di calendario giapponese Heisei Gannen.Therefore, the Gregorian calendar year 1989 was the Japanese calendar year Heisei Gannen.

Importante

Le ere nel calendario giapponese sono basate sul regno dell'imperatore e pertanto è previsto che cambino.Eras in the Japanese calendars are based on the emperor's reign and are therefore expected to change. Ad esempio, il 1° maggio 2019 contraddistingue l'inizio dell'era Reiwa in JapaneseCalendar e JapaneseLunisolarCalendar.For example, May 1, 2019 marked the beginning of the Reiwa era in the JapaneseCalendar and JapaneseLunisolarCalendar. Questo cambio di era interessa tutte le applicazioni che usano questi calendari.Such a change of era affects all applications that use these calendars. Vedere Handling a new era in the Japanese calendar in .NET (Gestione di una nuova era nel calendario giapponese in .NET) per altre informazioni e per determinare se le proprie applicazioni sono interessate dal cambio.See Handling a new era in the Japanese calendar in .NET for more information and to determine whether your applications are affected. Vedere Prepare your application for the Japanese era change (Preparare l'applicazione per il cambio di era giapponese) per informazioni sul test delle applicazioni nei sistemi Windows per verificare che siano pronte per il cambio di era.See Prepare your application for the Japanese era change for information on testing your applications on Windows systems to ensure their readiness for the era change. Vedere Utilizzo delle ere per informazioni sulle funzionalità in .NET che supportano calendari con più ere e per le procedure consigliate per l'uso dei calendari che supportano più ere.See Working with eras for features in .NET that support calendars with multiple eras and for best practices when working with calendars that support multiple eras.

Questa classe assegna i numeri alle ere come indicato di seguito:This class assigns numbers to the eras as follows:

Valore GetEraGetEra value Nome dell'eraEra Name Abbreviazione eraEra Abbreviation Date gregorianeGregorian Dates
55 令和 (Reiwa)令和 (Reiwa) 令和 (R, r)令和 (R, r) Dal 1 ° maggio 2019 al momentoMay 1, 2019 to present
44 平成 (Heisei)平成 (Heisei) 平 (H, h)平 (H, h) Dall'8 gennaio 1989 al 30 aprile 2019January 8, 1989 to April 30, 2019
33 昭和 (Mostra)昭和 (Showa) 昭 (S, s)昭 (S, s) Dal 25 dicembre 1926 al 7 gennaio 1989December 25, 1926 to January 7, 1989
22 大正 (Taisho)大正 (Taisho) 大 (T, t)大 (T, t) Dal 30 luglio 1912 al 24 dicembre 1926July 30, 1912 to December 24, 1926
11 明治 (Meiji)明治 (Meiji) 明 (M, m)明 (M, m) Dall'8 settembre 1868 al 29 luglio 1912September 8, 1868 to July 29, 1912

In genere, la classe JapaneseCalendar supporta le date dall'8 settembre nell'anno Meiji 1 (8 settembre 1868 del calendario gregoriano), ovvero il valore della proprietà MinSupportedDateTime.Ordinarily, the JapaneseCalendar class supports dates from September 8 in the year Meiji 1 (September 8, 1868 of the Gregorian calendar), which is the value of the MinSupportedDateTime property. Tuttavia, il metodo GetEra restituisce correttamente l'era per le date dal 1 ° gennaio al 7 settembre nell'anno Meiji 1 (dal 1 gennaio 1868 al 7 settembre 1868 nel calendario gregoriano).However, the GetEra method successfully returns the era for dates from January 1 through September 7 in the year Meiji 1 (January 1, 1868 through September 7, 1868 in the Gregorian calendar). Per le date precedenti al 1 gennaio 1868 nel calendario gregoriano, il metodo genera un'eccezione ArgumentOutOfRangeException.For dates earlier than January 1, 1868 in the Gregorian calendar, the method throws an ArgumentOutOfRangeException exception.

Si applica a

Vedi anche