Bewerken

Share via


DateTimeFormatInfo.NativeCalendarName Property

Definition

Gets the native name of the calendar associated with the current DateTimeFormatInfo object.

public:
 property System::String ^ NativeCalendarName { System::String ^ get(); };
public string NativeCalendarName { get; }
[System.Runtime.InteropServices.ComVisible(false)]
public string NativeCalendarName { get; }
member this.NativeCalendarName : string
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.NativeCalendarName : string
Public ReadOnly Property NativeCalendarName As String

Property Value

The native name of the calendar used in the culture associated with the current DateTimeFormatInfo object if that name is available, or the empty string ("") if the native calendar name is not available.

Attributes

Examples

The following example demonstrates several methods and properties that specify date and time format patterns, native calendar name, and full and abbreviated month and day names.

string[] myDateTimePatterns = ["MM/dd/yy", "MM/dd/yyyy"];

// Get the en-US culture.
CultureInfo ci = new("en-US");
// Get the DateTimeFormatInfo for the en-US culture.
DateTimeFormatInfo dtfi = ci.DateTimeFormat;

// Display the effective culture.
Console.WriteLine("This code example uses the {0} culture.", ci.Name);

// Display the native calendar name.
Console.WriteLine("\nNativeCalendarName...");
Console.WriteLine($"\"{dtfi.NativeCalendarName}\"");

// Display month genitive names.
Console.WriteLine("\nMonthGenitiveNames...");
foreach (string name in dtfi.MonthGenitiveNames)
{
    Console.WriteLine($"\"{name}\"");
}

// Display abbreviated month genitive names.
Console.WriteLine("\nAbbreviatedMonthGenitiveNames...");
foreach (string name in dtfi.AbbreviatedMonthGenitiveNames)
{
    Console.WriteLine($"\"{name}\"");
}

// Display shortest day names.
Console.WriteLine("\nShortestDayNames...");
foreach (string name in dtfi.ShortestDayNames)
{
    Console.WriteLine($"\"{name}\"");
}

// Display shortest day name for a particular day of the week.
Console.WriteLine("\nGetShortestDayName(DayOfWeek.Sunday)...");
Console.WriteLine($"\"{dtfi.GetShortestDayName(DayOfWeek.Sunday)}\"");

// Display the initial DateTime format patterns for the 'd' format specifier.
Console.WriteLine("\nInitial DateTime format patterns for the 'd' format specifier...");
foreach (string name in dtfi.GetAllDateTimePatterns('d'))
{
    Console.WriteLine($"\"{name}\"");
}

// Change the initial DateTime format patterns for the 'd' DateTime format specifier.
Console.WriteLine("\nChange the initial DateTime format patterns for the \n" +
                  "'d' format specifier to my format patterns...");
dtfi.SetAllDateTimePatterns(myDateTimePatterns, 'd');

// Display the new DateTime format patterns for the 'd' format specifier.
Console.WriteLine("\nNew DateTime format patterns for the 'd' format specifier...");
foreach (string name in dtfi.GetAllDateTimePatterns('d'))
{
    Console.WriteLine($"\"{name}\"");
}

/*
Output:

This code example uses the en-US culture.

NativeCalendarName...
"Gregorian Calendar"

MonthGenitiveNames...
"January"
"February"
"March"
"April"
"May"
"June"
"July"
"August"
"September"
"October"
"November"
"December"
""

AbbreviatedMonthGenitiveNames...
"Jan"
"Feb"
"Mar"
"Apr"
"May"
"Jun"
"Jul"
"Aug"
"Sep"
"Oct"
"Nov"
"Dec"
""

ShortestDayNames...
"S"
"M"
"T"
"W"
"T"
"F"
"S"

GetShortestDayName(DayOfWeek.Sunday)...
"S"

Initial DateTime format patterns for the 'd' format specifier...
"M/d/yyyy"
"MMM d, yyyy"
"M/d/yy"

Change the initial DateTime format patterns for the
'd' format specifier to my format patterns...

New DateTime format patterns for the 'd' format specifier...
"MM/dd/yy"
"MM/dd/yyyy"

*/
Dim myDateTimePatterns() As String = {"MM/dd/yy", "MM/dd/yyyy"}
Dim name As String = ""

' Get the en-US culture.
Dim ci As New CultureInfo("en-US")
' Get the DateTimeFormatInfo for the en-US culture.
Dim dtfi As DateTimeFormatInfo = ci.DateTimeFormat

' Display the effective culture.
Console.WriteLine("This code example uses the {0} culture.", ci.Name)

' Display the native calendar name.    
Console.WriteLine(vbCrLf & "NativeCalendarName...")
Console.WriteLine("""{0}""", dtfi.NativeCalendarName)

' Display month genitive names.
Console.WriteLine(vbCrLf & "MonthGenitiveNames...")
For Each name In dtfi.MonthGenitiveNames
    Console.WriteLine("""{0}""", name)
Next name

' Display abbreviated month genitive names.
Console.WriteLine(vbCrLf & "AbbreviatedMonthGenitiveNames...")
For Each name In dtfi.AbbreviatedMonthGenitiveNames
    Console.WriteLine("""{0}""", name)
Next name

' Display shortest day names.
Console.WriteLine(vbCrLf & "ShortestDayNames...")
For Each name In dtfi.ShortestDayNames
    Console.WriteLine("""{0}""", name)
Next name

' Display shortest day name for a particular day of the week.
Console.WriteLine(vbCrLf & "GetShortestDayName(DayOfWeek.Sunday)...")
Console.WriteLine("""{0}""", dtfi.GetShortestDayName(DayOfWeek.Sunday))

' Display the initial DateTime format patterns for the 'd' format specifier.
Console.WriteLine(vbCrLf & "Initial DateTime format patterns for " &
                  "the 'd' format specifier...")
For Each name In dtfi.GetAllDateTimePatterns("d"c)
    Console.WriteLine("""{0}""", name)
Next name

' Change the initial DateTime format patterns for the 'd' DateTime format specifier.
Console.WriteLine(vbCrLf & "Change the initial DateTime format patterns for the " &
                  vbCrLf & "'d' format specifier to my format patterns...")
dtfi.SetAllDateTimePatterns(myDateTimePatterns, "d"c)

' Display the new DateTime format patterns for the 'd' format specifier.
Console.WriteLine(vbCrLf &
                  "New DateTime format patterns for the 'd' format specifier...")
For Each name In dtfi.GetAllDateTimePatterns("d"c)
    Console.WriteLine("""{0}""", name)
Next name

'Output:
'
'This code example uses the en-US culture.
'
'NativeCalendarName...
'"Gregorian Calendar"
'
'MonthGenitiveNames...
'"January"
'"February"
'"March"
'"April"
'"May"
'"June"
'"July"
'"August"
'"September"
'"October"
'"November"
'"December"
'""
'
'AbbreviatedMonthGenitiveNames...
'"Jan"
'"Feb"
'"Mar"
'"Apr"
'"May"
'"Jun"
'"Jul"
'"Aug"
'"Sep"
'"Oct"
'"Nov"
'"Dec"
'""
'
'ShortestDayNames...
'"S"
'"M"
'"T"
'"W"
'"T"
'"F"
'"S"
'
'GetShortestDayName(DayOfWeek.Sunday)...
'"S"
'
'Initial DateTime format patterns for the 'd' format specifier...
'"M/d/yyyy"
'"MMM d, yyyy"
'"M/d/yy"
'
'Change the initial DateTime format patterns for the
''d' format specifier to my format patterns...
'
'New DateTime format patterns for the 'd' format specifier...
'"MM/dd/yy"
'"MM/dd/yyyy"
'

Notes to Callers

If Calendar is the TaiwanCalendar but the CurrentCulture is not "zh-TW", then NativeCalendarName, GetEraName(Int32), and GetAbbreviatedEraName(Int32) return an empty string ("").

Applies to