DateTimeFormatInfo.LongDatePattern Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví vlastní formátovací řetězec pro dlouhou hodnotu data.
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
Hodnota vlastnosti
Řetězec vlastního formátu pro dlouhou hodnotu data.
Výjimky
Vlastnost se nastavuje na null
hodnotu .
Vlastnost se nastavuje a DateTimeFormatInfo objekt je jen pro čtení.
Příklady
Následující příklad zobrazí hodnotu LongDatePattern vlastnosti pro několik jazykových verzí.
using namespace System;
using namespace System::Globalization;
void PrintPattern( String^ myCulture )
{
CultureInfo^ MyCI = gcnew CultureInfo( myCulture,false );
DateTimeFormatInfo^ myDTFI = MyCI->DateTimeFormat;
Console::WriteLine( " {0} {1}", myCulture, myDTFI->LongDatePattern );
}
int main()
{
// Displays the values of the pattern properties.
Console::WriteLine( " CULTURE PROPERTY VALUE" );
PrintPattern( "en-US" );
PrintPattern( "ja-JP" );
PrintPattern( "fr-FR" );
}
/*
This code produces the following output:
CULTURE PROPERTY VALUE
en-US dddd, MMMM dd, yyyy
ja-JP yyyy'年'M'月'd'日'
fr-FR dddd d MMMM yyyy
*/
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:
CULTURE PROPERTY VALUE
en-US dddd, MMMM d, yyyy
ja-JP yyyy'年'M'月'd'日'
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
'
Poznámky
Vlastnost LongDatePattern definuje formát specifických pro jazykovou verzi datových řetězců, které jsou vráceny voláním DateTime.ToString metod a DateTimeOffset.ToString a složenými řetězci formátu, které jsou dodány řetězec standardního formátu "D". Následující příklad znázorňuje vztahy mezi následujícími vztahy: řetězec standardního formátu "D", řetězec vlastního formátu vrácený LongDatePattern vlastností a reprezentace data specifická pro jazykovou verzi.
using System;
using System.Globalization;
public class Example
{
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
Viz Vlastní řetězce formátu data a času , kde najdete specifikátory jednotlivých vlastních formátů, které je možné kombinovat a vytvářet řetězce vlastního formátu, jako je "dddd, dd MMMM yyyy".
Místo použití zástupného symbolu oddělovače data byste měli nastavit oddělovač kalendářních dat ve vzoru dlouhého data na přesný řetězec. Pokud například chcete získat vzor MM-DD-yyyy, nastavte formát dlouhého data na "MM-DD-yyyy".
Hodnota této vlastnosti se může změnit, pokud se změní kalendář používaný jazykovou verzí. Následující příklad například ukazuje, jak se LongDatePattern změní vlastnost objektu, který představuje jazykovou CultureInfo verzi arabštiny (Sýrie), když Calendar se změní objekt používaný jazykovou verzí.
using System;
using System.Globalization;
using System.IO;
public class Example
{
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