GregorianCalendarTypes 列舉
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
定義西曆的不同語言版本。
public enum class GregorianCalendarTypes
public enum GregorianCalendarTypes
[System.Serializable]
public enum GregorianCalendarTypes
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum GregorianCalendarTypes
type GregorianCalendarTypes =
[<System.Serializable>]
type GregorianCalendarTypes =
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type GregorianCalendarTypes =
Public Enum GregorianCalendarTypes
- 繼承
- 屬性
欄位
Arabic | 10 | 參考西曆的阿拉伯版本。 |
Localized | 1 | 參考西曆的當地語系化版本,並根據使用 CultureInfo 的 DateTimeFormatInfo 的語言。 |
MiddleEastFrench | 9 | 參考西曆的中東法文版本。 |
TransliteratedEnglish | 11 | 參考西曆的音譯英文版本。 |
TransliteratedFrench | 12 | 參考西曆的音譯法文版本。 |
USEnglish | 2 | 參考西曆的美國英文版本。 |
範例
下列程式代碼範例示範如何判斷文化特性所支援的 GregorianCalendar 語言版本。
using namespace System;
using namespace System::Globalization;
using namespace System::Collections;
int main()
{
// Calendar* myOptCals[] = new CultureInfo(S"ar-SA") -> OptionalCalendars;
CultureInfo^ MyCI = gcnew CultureInfo( "ar-SA" );
array<Calendar^>^myOptCals = MyCI->OptionalCalendars;
// Checks which ones are GregorianCalendar then determines the GregorianCalendar version.
Console::WriteLine( "The ar-SA culture supports the following calendars:" );
IEnumerator^ myEnum = myOptCals->GetEnumerator();
while ( myEnum->MoveNext() )
{
Calendar^ cal = safe_cast<Calendar^>(myEnum->Current);
if ( cal->GetType() == GregorianCalendar::typeid )
{
GregorianCalendar^ myGreCal = dynamic_cast<GregorianCalendar^>(cal);
GregorianCalendarTypes calType = myGreCal->CalendarType;
Console::WriteLine( " {0} ( {1})", cal, calType );
}
else
Console::WriteLine( " {0}", cal );
}
}
/*
This code produces the following output.
The ar-SA culture supports the following calendars:
System.Globalization.HijriCalendar
System.Globalization.GregorianCalendar ( USEnglish)
System.Globalization.GregorianCalendar ( MiddleEastFrench)
System.Globalization.GregorianCalendar ( Arabic)
System.Globalization.GregorianCalendar ( Localized)
System.Globalization.GregorianCalendar ( TransliteratedFrench)
*/
using System;
using System.Globalization;
public class SamplesCultureInfo {
public static void Main() {
// Gets the calendars supported by the ar-SA culture.
Calendar[] myOptCals = new CultureInfo("ar-SA").OptionalCalendars;
// Checks which ones are GregorianCalendar then determines the GregorianCalendar version.
Console.WriteLine( "The ar-SA culture supports the following calendars:" );
foreach ( Calendar cal in myOptCals ) {
if ( cal.GetType() == typeof( GregorianCalendar ) ) {
GregorianCalendar myGreCal = (GregorianCalendar) cal;
GregorianCalendarTypes calType = myGreCal.CalendarType;
Console.WriteLine( " {0} ({1})", cal, calType );
}
else {
Console.WriteLine( " {0}", cal );
}
}
}
}
/*
This code produces the following output.
The ar-SA culture supports the following calendars:
System.Globalization.HijriCalendar
System.Globalization.GregorianCalendar (USEnglish)
System.Globalization.GregorianCalendar (MiddleEastFrench)
System.Globalization.GregorianCalendar (Arabic)
System.Globalization.GregorianCalendar (Localized)
System.Globalization.GregorianCalendar (TransliteratedFrench)
*/
Imports System.Globalization
Public Class SamplesCultureInfo
Public Shared Sub Main()
' Gets the calendars supported by the ar-SA culture.
Dim myOptCals As Calendar() = New CultureInfo("ar-SA").OptionalCalendars
' Checks which ones are GregorianCalendar then determines the GregorianCalendar version.
Console.WriteLine("The ar-SA culture supports the following calendars:")
Dim cal As Calendar
For Each cal In myOptCals
If cal.GetType() Is GetType(GregorianCalendar) Then
Dim myGreCal As GregorianCalendar = CType(cal, GregorianCalendar)
Dim calType As GregorianCalendarTypes = myGreCal.CalendarType
Console.WriteLine(" {0} ({1})", cal, calType)
Else
Console.WriteLine(" {0}", cal)
End If
Next cal
End Sub
End Class
'This code produces the following output.
'
'The ar-SA culture supports the following calendars:
' System.Globalization.HijriCalendar
' System.Globalization.GregorianCalendar (USEnglish)
' System.Globalization.GregorianCalendar (MiddleEastFrench)
' System.Globalization.GregorianCalendar (Arabic)
' System.Globalization.GregorianCalendar (Localized)
' System.Globalization.GregorianCalendar (TransliteratedFrench)
下列程式代碼範例會 DateTime 使用 GregorianCalendar 本地化的 列印 。
using namespace System;
using namespace System::Globalization;
int main()
{
// Creates and initializes three different CultureInfo.
CultureInfo^ myCIdeDE = gcnew CultureInfo( "de-DE",false );
CultureInfo^ myCIenUS = gcnew CultureInfo( "en-US",false );
CultureInfo^ myCIfrFR = gcnew CultureInfo( "fr-FR",false );
CultureInfo^ myCIruRU = gcnew CultureInfo( "ru-RU",false );
// Creates a Localized GregorianCalendar.
// GregorianCalendarTypes::Localized is the default when using the GregorianCalendar constructor with->Item[Out] parameters.
Calendar^ myCal = gcnew GregorianCalendar;
// Sets the DateTimeFormatInfo::Calendar property to a Localized GregorianCalendar.
// Localized GregorianCalendar is the default calendar for de-DE, en-US, and fr-FR,
myCIruRU->DateTimeFormat->Calendar = myCal;
// Creates a DateTime.
DateTime myDT = DateTime(2002,1,3,13,30,45);
// Displays the DateTime.
Console::WriteLine( "de-DE: {0}", myDT.ToString( "F", myCIdeDE ) );
Console::WriteLine( "en-US: {0}", myDT.ToString( "F", myCIenUS ) );
Console::WriteLine( "fr-FR: {0}", myDT.ToString( "F", myCIfrFR ) );
Console::WriteLine( "ru-RU: {0}", myDT.ToString( "F", myCIruRU ) );
}
/*
The example displays the following output:
de-DE: Donnerstag, 3. Januar 2002 13:30:45
en-US: Thursday, January 03, 2002 1:30:45 PM
fr-FR: jeudi 3 janvier 2002 13:30:45
ru-RU: 3 января 2002 г. 13:30:45
*/
using System;
using System.Globalization;
public class SamplesGregorianCalendar {
public static void Main() {
// Creates and initializes four different CultureInfo objects.
CultureInfo myCIdeDE = new CultureInfo("de-DE", false);
CultureInfo myCIenUS = new CultureInfo("en-US", false);
CultureInfo myCIfrFR = new CultureInfo("fr-FR", false);
CultureInfo myCIruRU = new CultureInfo("ru-RU", false);
// Creates a Localized GregorianCalendar.
// GregorianCalendarTypes.Localized is the default when using the GregorianCalendar constructor without parameters.
Calendar myCal = new GregorianCalendar();
// Sets the DateTimeFormatInfo.Calendar property to a Localized GregorianCalendar.
// Localized GregorianCalendar is the default calendar for de-DE, en-US, and fr-FR,
myCIruRU.DateTimeFormat.Calendar = myCal;
// Creates a DateTime.
DateTime myDT = new DateTime( 2002, 1, 3, 13, 30, 45 );
// Displays the DateTime.
Console.WriteLine( "de-DE: {0}", myDT.ToString( "F", myCIdeDE ) );
Console.WriteLine( "en-US: {0}", myDT.ToString( "F", myCIenUS ) );
Console.WriteLine( "fr-FR: {0}", myDT.ToString( "F", myCIfrFR ) );
Console.WriteLine( "ru-RU: {0}", myDT.ToString( "F", myCIruRU ) );
}
}
/*
The example displays the following output:
de-DE: Donnerstag, 3. Januar 2002 13:30:45
en-US: Thursday, January 03, 2002 1:30:45 PM
fr-FR: jeudi 3 janvier 2002 13:30:45
ru-RU: 3 января 2002 г. 13:30:45
*/
Imports System.Globalization
Public Class SamplesGregorianCalendar
Public Shared Sub Main()
' Creates and initializes three different CultureInfo.
Dim myCIdeDE As New CultureInfo("de-DE", False)
Dim myCIenUS As New CultureInfo("en-US", False)
Dim myCIfrFR As New CultureInfo("fr-FR", False)
Dim myCIruRU As New CultureInfo("ru-RU", False)
' Creates a Localized GregorianCalendar.
' GregorianCalendarTypes.Localized is the default when using the GregorianCalendar constructor without parameters.
Dim myCal = New GregorianCalendar()
' Sets the DateTimeFormatInfo.Calendar property to a Localized GregorianCalendar.
' Localized GregorianCalendar is the default calendar for de-DE, en-US, and fr-FR,
myCIruRU.DateTimeFormat.Calendar = myCal
' Creates a DateTime.
Dim myDT As New DateTime(2002, 1, 3, 13, 30, 45)
' Displays the DateTime.
Console.WriteLine("de-DE: {0}", myDT.ToString("F", myCIdeDE))
Console.WriteLine("en-US: {0}", myDT.ToString("F", myCIenUS))
Console.WriteLine("fr-FR: {0}", myDT.ToString("F", myCIfrFR))
Console.WriteLine("ru-RU: {0}", myDT.ToString("F", myCIruRU))
End Sub
End Class
' This example displays the following output:
' de-DE: Donnerstag, 3. Januar 2002 13:30:45
' en-US: Thursday, January 03, 2002 1:30:45 PM
' fr-FR: jeudi 3 janvier 2002 13:30:45
' ru-RU: 3 января 2002 г. 13:30:45
備註
與 GregorianCalendar 相關聯的日期和時間模式會根據語言而有所不同。 GregorianCalendar如果在 中DateTimeFormatInfo.Calendar選取 ,GregorianCalendarTypes則可以用來指定要在該 中使用的DateTimeFormatInfo日期和時間模式。
對於阿拉伯文文化特性,可以使用更多語言版本的公曆。 例如,您可以使用 值的GregorianCalendarMiddleEastFrench
法文版本。
支援 GregorianCalendarTypes 的文化特性可能不支援 的所有語言版本 GregorianCalendar。 CultureInfo.Calendar和 CultureInfo.OptionalCalendars 屬性會指定該文化特性支援的行事曆。 如果 GregorianCalendar 受支援, GregorianCalendar.CalendarType 可用來判斷 支援的語言版本 GregorianCalendar 。