DateTimeFormatInfo.LongDatePattern Свойство

Определение

Получает или задает строку пользовательского формата для длинного значения даты.

C#
public string LongDatePattern { get; set; }

Значение свойства

Строка пользовательского формата для длинного значения даты.

Исключения

Для свойства задается значение null.

Для свойства задается значение, а объект DateTimeFormatInfo доступен только для чтения.

Примеры

В следующем примере отображается значение LongDatePattern свойства для нескольких языков и региональных параметров.

C#
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

*/

Комментарии

Свойство LongDatePattern определяет зависящий от языка и региональных параметров формат строк даты, возвращаемых вызовами DateTime.ToString методов и , DateTimeOffset.ToString а также строками составного формата, которые предоставляются строкой стандартного формата "D". В следующем примере показаны связи между следующими элементами: строка стандартного формата "D", строка настраиваемого формата, возвращаемая свойством LongDatePattern , и представление даты, зависят от языка и региональных параметров.

C#
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

Сведения об отдельных описателях настраиваемого формата, которые можно объединить для создания строк настраиваемого формата, таких как "dddd, dd MMMM yyyy, см. в разделе Настраиваемые строки формата даты и времени ".

Вместо использования заполнителя разделителя даты следует задать в шаблоне длинных дат точную строку. Например, чтобы получить шаблон ММ-ДД-гггг, задайте для шаблона длинной даты значение "ММ-ДД-гггг".

Значение этого свойства может измениться при изменении календаря, используемого языком и региональными параметрами. Например, в следующем примере показано, как LongDatePattern изменяется свойство CultureInfo объекта , представляющего язык и региональные параметры арабского языка (Сирия) при Calendar изменении объекта, используемого языком и региональными параметрами.

C#
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

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

См. также раздел