DateTimeFormatInfo.LongDatePattern Egenskap
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.
Hämtar eller anger den anpassade formatsträngen för ett långt datumvärde.
public:
property System::String ^ LongDatePattern { System::String ^ get(); void set(System::String ^ value); };
public string LongDatePattern { get; set; }
member this.LongDatePattern : string with get, set
Public Property LongDatePattern As String
Egenskapsvärde
Den anpassade formatsträngen för ett långt datumvärde.
Undantag
Egenskapen är inställd på null.
Egenskapen anges och objektet DateTimeFormatInfo är skrivskyddat.
Exempel
I följande exempel visas värdet för LongDatePattern egenskapen för några kulturer.
using System;
using System.Globalization;
public class SamplesDTFI {
public static void Main() {
// Displays the values of the pattern properties.
Console.WriteLine( " CULTURE PROPERTY VALUE" );
PrintPattern( "en-US" );
PrintPattern( "ja-JP" );
PrintPattern( "fr-FR" );
}
public static void PrintPattern( String myCulture ) {
DateTimeFormatInfo myDTFI = new CultureInfo( myCulture, false ).DateTimeFormat;
Console.WriteLine( " {0} {1}", myCulture, myDTFI.LongDatePattern );
}
}
/*
This code produces the following output. Note that the exact output format depends on the OS, the OS version, and the native globalization library used by the OS.
CULTURE PROPERTY VALUE
en-US dddd, MMMM d, yyyy
ja-JP yyyy年M月d日dddd
fr-FR dddd d MMMM yyyy
*/
Imports System.Globalization
Public Class SamplesDTFI
Public Shared Sub Main()
' Displays the values of the pattern properties.
Console.WriteLine(" CULTURE PROPERTY VALUE")
PrintPattern("en-US")
PrintPattern("ja-JP")
PrintPattern("fr-FR")
End Sub
Public Shared Sub PrintPattern(myCulture As [String])
Dim myDTFI As DateTimeFormatInfo = New CultureInfo(myCulture, False).DateTimeFormat
Console.WriteLine(" {0} {1}", myCulture, myDTFI.LongDatePattern)
End Sub
End Class
'This code produces the following output:
'
' CULTURE PROPERTY VALUE
' en-US dddd, MMMM d, yyyy
' ja-JP yyyy'年'M'月'd'日'
' fr-FR dddd d MMMM yyyy
'
Kommentarer
Egenskapen LongDatePattern definierar det kulturspecifika formatet för datumsträngar som returneras av anrop till DateTime.ToString metoderna och DateTimeOffset.ToString och av sammansatta formatsträngar som tillhandahålls standardformatsträngen "D". I följande exempel visas relationerna mellan följande: standardformatsträngen "D", den anpassade formatsträng som LongDatePattern returneras av egenskapen och den kulturspecifika representationen av ett datum.
using System;
using System.Globalization;
public class Example1
{
public static void Main()
{
DateTime date1 = new DateTime(2011, 11, 12);
string[] cultureNames = { "en-US", "fr-FR", "ru-RU", "de-DE" };
Console.WriteLine("{0,-7} {1,-20} {2:D}\n", "Culture", "Long Date Pattern", "Date");
foreach (var cultureName in cultureNames) {
CultureInfo culture = CultureInfo.CreateSpecificCulture(cultureName);
Console.WriteLine("{0,-7} {1,-20} {2}",
culture.Name,
culture.DateTimeFormat.LongDatePattern,
date1.ToString("D", culture));
}
}
}
// The example displays the following output:
// Culture Long Date Pattern Date
//
// en-US dddd, MMMM d, yyyy Saturday, November 12, 2011
// fr-FR dddd d MMMM yyyy samedi 12 novembre 2011
// ru-RU d MMMM yyyy 'г.' 12 ноября 2011 г.
// de-DE dddd, d. MMMM yyyy Samstag, 12. November 2011
Imports System.Globalization
Module Example
Public Sub Main()
Dim date1 As Date = #11/12/2011#
Dim cultureNames() As String = { "en-US", "fr-FR", "ru-RU", "de-DE" }
Console.WriteLine("{0,-7} {1,-20} {2:D}", "Culture", "Long Date Pattern", "Date")
Console.WriteLine()
For Each cultureName In cultureNames
Dim culture As CultureInfo = CultureInfo.CreateSpecificCulture(cultureName)
Console.WriteLine("{0,-7} {1,-20} {2}", culture.Name, culture.DateTimeFormat.LongDatePattern,
date1.ToString("D", culture))
Next
End Sub
End Module
' The example displays the following output:
' Culture Long Date Pattern Date
'
' en-US dddd, MMMM d, yyyy Saturday, November 12, 2011
' fr-FR dddd d MMMM yyyy samedi 12 novembre 2011
' ru-RU d MMMM yyyy 'г.' 12 ноября 2011 г.
' de-DE dddd, d. MMMM yyyy Samstag, 12. November 2011
Se Anpassade datum- och tidsformatsträngar för enskilda anpassade formatspecificerare som kan kombineras för att skapa anpassade formatsträngar som "dddd, dd MMMM åååå".
Du bör ange datumavgränsaren i det långa datummönstret till en exakt sträng i stället för att använda platshållaren för datumavgränsare. Om du till exempel vill hämta mönstret MM-DD-åååå anger du det långa datummönstret till "MM-DD-ååååå".
Värdet för den här egenskapen kan ändras om kalendern som används av en kultur ändras. I följande exempel visas till exempel hur LongDatePattern egenskapen för ett CultureInfo objekt som representerar den arabiska kulturen (Syrien) ändras när objektet Calendar som används av kulturen ändras.
using System;
using System.Globalization;
using System.IO;
public class Example2
{
public static void Main()
{
DateTime date1 = new DateTime(2011, 8, 7);
CultureInfo ci = CultureInfo.CreateSpecificCulture("ar-SY");
StreamWriter sw = new StreamWriter(@".\arSYCalendars.txt");
sw.WriteLine("{0,-32} {1,-21} {2}\n",
"Calendar", "Long Date Pattern", "Example Date");
foreach (var cal in ci.OptionalCalendars) {
ci.DateTimeFormat.Calendar = cal;
sw.WriteLine("{0,-32} {1,-21} {2}", GetCalendarName(cal),
ci.DateTimeFormat.LongDatePattern,
date1.ToString("D", ci));
}
sw.Close();
}
private static string GetCalendarName(Calendar cal)
{
string calName;
calName = cal.GetType().Name.Substring(0, cal.GetType().Name.IndexOf("Cal"));
if (calName.Equals("Gregorian")) {
GregorianCalendar grCal = cal as GregorianCalendar;
calName += String.Format("-{0}", grCal.CalendarType);
}
return calName;
}
}
// The example generates the following output:
// Calendar Long Date Pattern Example Date
//
// Gregorian-Localized dd MMMM, yyyy 07 آب, 2011
// UmAlQura dd/MMMM/yyyy 07/رمضان/1432
// Hijri dd MMMM, yyyy 08 رمضان, 1432
// Gregorian-USEnglish dddd, MMMM dd, yyyy Sunday, August 07, 2011
// Gregorian-MiddleEastFrench dddd, MMMM dd, yyyy dimanche, août 07, 2011
// Gregorian-TransliteratedEnglish dddd, MMMM dd, yyyy الأحد, أغسطس 07, 2011
// Gregorian-TransliteratedFrench dddd, MMMM dd, yyyy الأحد, أوت 07, 2011
Imports System.Globalization
Imports System.IO
Module Example
Public Sub Main()
Dim date1 As Date = #8/7/2011#
Dim ci As CultureInfo = CultureInfo.CreateSpecificCulture("ar-SY")
Dim sw As New StreamWriter(".\arSYCalendars.txt")
sw.WriteLine("{0,-32} {1,-21} {2}",
"Calendar", "Long Date Pattern", "Example Date")
sw.WriteLine()
For Each cal As Calendar In ci.OptionalCalendars
ci.DateTimeFormat.Calendar = cal
sw.WriteLine("{0,-32} {1,-21} {2}", GetCalendarName(cal),
ci.DateTimeFormat.LongDatePattern,
date1.ToString("D", ci))
Next
sw.Close()
End Sub
Private Function GetCalendarName(cal As Calendar) As String
Dim calName As String
calName = cal.GetType().Name.Substring(0, cal.GetType().Name.IndexOf("Cal"))
If calName.Equals("Gregorian") Then
Dim grCal As GregorianCalendar = DirectCast(cal, GregorianCalendar)
calName += String.Format("-{0}", grCal.CalendarType)
End If
Return calName
End Function
End Module
' The example generates the following output:
' Calendar Long Date Pattern Example Date
'
' Gregorian-Localized dd MMMM, yyyy 07 آب, 2011
' UmAlQura dd/MMMM/yyyy 07/رمضان/1432
' Hijri dd MMMM, yyyy 08 رمضان, 1432
' Gregorian-USEnglish dddd, MMMM dd, yyyy Sunday, August 07, 2011
' Gregorian-MiddleEastFrench dddd, MMMM dd, yyyy dimanche, août 07, 2011
' Gregorian-TransliteratedEnglish dddd, MMMM dd, yyyy الأحد, أغسطس 07, 2011
' Gregorian-TransliteratedFrench dddd, MMMM dd, yyyy الأحد, أوت 07, 2011