JapaneseCalendar.GetEra(DateTime) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Returnerar eran i den angivna 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
Parametrar
Returer
Ett heltal som representerar eran i den angivna DateTime.
Undantag
Resultatet DateTime ligger utanför det intervall som stöds.
Exempel
I följande exempel visas värdena för flera komponenter i en DateTime när det gäller den japanska kalendern.
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
Kommentarer
Den japanska kalendern känner igen en era för varje kejsares regeringstid. De två senaste epokerna är Heisei-eran, som börjar under det gregorianska kalenderåret 1989, och Reiwa-eran, med början under det gregorianska kalenderåret 2019. Namnet på eran visas vanligtvis före året. Till exempel är det gregorianska kalenderåret 2001 det japanska kalenderåret Heisei 13. Observera att det första året av en era kallas "Gannen". Därför var det gregorianska kalenderåret 1989 det japanska kalenderåret Heisei Gannen.
Important
Epoker i de japanska kalendrarna baseras på kejsarens regeringstid och förväntas därför förändras. Den 1 maj 2019 markerade till exempel början av Reiwa-eran i JapaneseCalendar och JapaneseLunisolarCalendar. En sådan ändring av era påverkar alla program som använder dessa kalendrar. Mer information och för att avgöra om dina program påverkas finns i Hantera en ny era i den japanska kalendern i .NET. Information om hur du testar dina program i Windows-system för att säkerställa att de är redo för tidsändringen finns i Förbereda ditt program för ändringen av den japanska eran. Funktioner i .NET som stöder kalendrar med flera epoker och bästa praxis när du arbetar med kalendrar som stöder flera epoker finns i Arbeta med epoker.
Den här klassen tilldelar tal till epokerna på följande sätt:
| GetEra-värde | Namn på era | Era-förkortning | Gregorianska datum |
|---|---|---|---|
| 5 | 令和 (Reiwa) | 令和 (R, r) | 1 maj 2019 att presentera |
| 4 | 平成 (Heisei) | 平 (H, h) | 8 januari 1989 till 30 april 2019 |
| 3 | 昭和 (Showa) | 昭 (S, s) | 25 december 1926 till 7 januari 1989 |
| 2 | 大正 (Taisho) | 大 (T, t) | 30 juli 1912 till 24 december 1926 |
| 1 | 明治 (Meiji) | 明 (M, m) | 23 oktober 1868 till 29 juli 1912 |
Vanligtvis stöder klassen JapaneseCalendar datum från den 23 oktober år Meiji 1 (23 oktober 1868 i den gregorianska kalendern), vilket är värdet för egenskapen MinSupportedDateTime i .NET 11 och senare versioner. Metoden returnerar dock GetEra eran för datum från 1 januari till 22 oktober under året Meiji 1 (1 januari 1868 till 22 oktober 1868 i den gregorianska kalendern). För datum tidigare än den 1 januari 1868 i den gregorianska kalendern utlöser metoden ett ArgumentOutOfRangeException undantag.