DateTimeFormatInfo.SetAllDateTimePatterns(String[], Char) DateTimeFormatInfo.SetAllDateTimePatterns(String[], Char) DateTimeFormatInfo.SetAllDateTimePatterns(String[], Char) DateTimeFormatInfo.SetAllDateTimePatterns(String[], Char) Method

정의

지정된 표준 형식 문자열에 해당하는 사용자 지정 날짜 및 시간 형식 문자열을 설정합니다.Sets the custom date and time format strings that correspond to a specified standard format string.

public:
 void SetAllDateTimePatterns(cli::array <System::String ^> ^ patterns, char format);
[System.Runtime.InteropServices.ComVisible(false)]
public void SetAllDateTimePatterns (string[] patterns, char format);
member this.SetAllDateTimePatterns : string[] * char -> unit
Public Sub SetAllDateTimePatterns (patterns As String(), format As Char)

매개 변수

patterns
String[]

사용자 지정 형식 문자열의 배열입니다.An array of custom format strings.

format
Char Char Char Char

patterns 매개 변수에서 지정한 사용자 지정 형식 문자열과 관련된 표준 형식 문자열입니다.The standard format string associated with the custom format strings specified in the patterns parameter.

예외

patternsnull 또는 길이가 0인 배열입니다.patterns is null or a zero-length array.

또는-or- format이 유효한 표준 형식 문자열이 아니거나 패턴을 설정할 수 없는 표준 형식 문자열입니다.format is not a valid standard format string or is a standard format string whose patterns cannot be set.

patterns에는 값이 null인 배열 요소가 있습니다.patterns has an array element whose value is null.

예제

다음 예제에서는 CultureInfo 개체 문화권 "EN-US" (영어-미국)를 나타내는 배열을 "Y" 표준 서식 문자열을 사용 하 여 날짜 및 시간 문자열 구문 분석 하는 데 사용 합니다.The following example instantiates a CultureInfo object that represents the "en-US" (English - United States) culture and uses it to parse an array of date and time strings using the "Y" standard format string. 사용 하 여는 SetAllDateTimePatterns "Y" 표준 서식 문자열 및 다음 배열의 날짜 및 시간 문자열 구문 분석 하려고 사용 하 여 새 사용자 지정 형식 문자열을 연결 하는 방법입니다.It then uses the SetAllDateTimePatterns method to associate a new custom format string with the "Y" standard format string, and then attempts to parse the array of date and time strings. 예제의 출력에서에서 새 사용자 지정 형식 문자열 구문 분석 및 서식 지정 작업에서 사용 되는 하는 방법을 보여 줍니다.Output from the example demonstrates that the new custom format string is used in both the parsing and formatting operations.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      // Use standard en-US culture.
      CultureInfo enUS = new CultureInfo("en-US");
      
      string[] values = { "December 2010", "December, 2010",  
                          "Dec-2010", "December-2010" }; 
      
      Console.WriteLine("Supported Y/y patterns for {0} culture:", enUS.Name);
      foreach (var pattern in enUS.DateTimeFormat.GetAllDateTimePatterns('Y'))
         Console.WriteLine("   " + pattern);

      Console.WriteLine();
      
      // Try to parse each date string using "Y" format specifier.
      foreach (var value in values) {
         try {
            DateTime dat = DateTime.ParseExact(value, "Y", enUS);
            Console.WriteLine(String.Format(enUS, "   Parsed {0} as {1:Y}", value, dat));
         }
         catch (FormatException) {
            Console.WriteLine("   Cannot parse {0}", value);
         }   
      }   
      Console.WriteLine();
      
      //Modify supported "Y" format.
      enUS.DateTimeFormat.SetAllDateTimePatterns( new string[] { "MMM-yyyy" } , 'Y');
      
      Console.WriteLine("New supported Y/y patterns for {0} culture:", enUS.Name);
      foreach (var pattern in enUS.DateTimeFormat.GetAllDateTimePatterns('Y'))
         Console.WriteLine("   " + pattern);

      Console.WriteLine();

      // Try to parse each date string using "Y" format specifier.
      foreach (var value in values) {
         try {
            DateTime dat = DateTime.ParseExact(value, "Y", enUS);
            Console.WriteLine(String.Format(enUS, "   Parsed {0} as {1:Y}", value, dat));
         }
         catch (FormatException) {
            Console.WriteLine("   Cannot parse {0}", value);
         }   
      }   
   }
}
// The example displays the following output:
//       Supported Y/y patterns for en-US culture:
//          MMMM, yyyy
//       
//          Cannot parse December 2010
//          Parsed December, 2010 as December, 2010
//          Cannot parse Dec-2010
//          Cannot parse December-2010
//       
//       New supported Y/y patterns for en-US culture:
//          MMM-yyyy
//       
//          Cannot parse December 2010
//          Cannot parse December, 2010
//          Parsed Dec-2010 as Dec-2010
//          Cannot parse December-2010
Imports System.Globalization

Module Example
   Public Sub Main()
      ' Use standard en-US culture.
      Dim enUS As New CultureInfo("en-US")
      
      Dim values() As String = { "December 2010", "December, 2010",  
                                 "Dec-2010", "December-2010" } 
      
      Console.WriteLine("Supported Y/y patterns for {0} culture:", enUS.Name)
      For Each pattern In enUS.DateTimeFormat.GetAllDateTimePatterns("Y"c)
         Console.WriteLine("   " + pattern)
      Next 
      Console.WriteLine()
      
      ' Try to parse each date string using "Y" format specifier.
      For Each value In values
         Try
            Dim dat As Date = Date.ParseExact(value, "Y", enUS)
            Console.WriteLine(String.Format(enUS, "   Parsed {0} as {1:Y}", value, dat))
         Catch e As FormatException
            Console.WriteLine("   Cannot parse {0}", value)
         End Try   
      Next   
      Console.WriteLine()
      
      'Modify supported "Y" format.
      enUS.DateTimeFormat.SetAllDateTimePatterns( { "MMM-yyyy" } , "Y"c)
      
      Console.WriteLine("New supported Y/y patterns for {0} culture:", enUS.Name)
      For Each pattern In enUS.DateTimeFormat.GetAllDateTimePatterns("Y"c)
         Console.WriteLine("   " + pattern)
      Next 
      Console.WriteLine()

      ' Try to parse each date string using "Y" format specifier.
      For Each value In values
         Try
            Dim dat As Date = Date.ParseExact(value, "Y", enUS)
            Console.WriteLine(String.Format(enUS, "   Parsed {0} as {1:Y}", value, dat))
         Catch e As FormatException
            Console.WriteLine("   Cannot parse {0}", value)
         End Try   
      Next   
   End Sub
End Module
' The example displays the following output:
'       Supported Y/y patterns for en-US culture:
'          MMMM, yyyy
'       
'          Cannot parse December 2010
'          Parsed December, 2010 as December, 2010
'          Cannot parse Dec-2010
'          Cannot parse December-2010
'       
'       New supported Y/y patterns for en-US culture:
'          MMM-yyyy
'       
'          Cannot parse December 2010
'          Cannot parse December, 2010
'          Parsed Dec-2010 as Dec-2010
'          Cannot parse December-2010

설명

SetAllDateTimePatterns 메서드 특정 표준 날짜 및 시간 서식 문자열에 해당 하는 사용자 지정 서식 문자열을 정의 합니다.The SetAllDateTimePatterns method defines the custom format strings that correspond to a particular standard date and time format string. 표준 날짜 및 시간 서식 문자열에서 지정한 날짜 및 시간 형식 지정 메서드가 포함을 호출 하는 경우 format에서 첫 번째 요소를 사용 하는 메서드는 patterns 결과 문자열의 형식을 정의 하는 배열입니다.If a call to a date and time formatting method includes the standard date and time format string specified by format, the method uses the first element in the patterns array to define the format of the resulting string.

경고

합니다 Parse 하 고 TryParse 메서드 수행에서 모든 문자열을 완벽 하 게 반복 되지 않습니다 patterns 날짜 및 시간의 문자열 표현 구문 분석 하는 경우.The Parse and TryParse methods do not fully iterate all strings in patterns when parsing the string representation of a date and time. 날짜 및 시간 문자열을 구문 분석 작업을 특정 형식에 필요한 경우에 유효한 형식의 배열을 전달 해야 합니다 DateTime.ParseExact(String, String[], IFormatProvider, DateTimeStyles), DateTimeOffset.ParseExact(String, String[], IFormatProvider, DateTimeStyles)DateTime.TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime), 또는 DateTimeOffset.TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTimeOffset) 메서드.If you require a date and time string to have particular formats in a parsing operation, you should pass the array of valid formats to the DateTime.ParseExact(String, String[], IFormatProvider, DateTimeStyles), DateTimeOffset.ParseExact(String, String[], IFormatProvider, DateTimeStyles), DateTime.TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime), or DateTimeOffset.TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTimeOffset) method.

"d", "D", "t", "T" 및 "y" 또는 "Y" 표준 날짜에 해당 하는 사용자 지정 서식 문자열 및 시간 서식 문자열을 정의할 수 있습니다.You can define custom format strings that correspond to the "d", "D", "t", "T", and "y" or "Y" standard date and time format strings. 경우 값 format 는 다른 표준 형식 문자열을 SetAllDateTimePatterns 메서드가 throw는 ArgumentException합니다.If the value of format is any other standard format string, the SetAllDateTimePatterns method throws an ArgumentException.

사용자 지정 날짜 및 시간 형식 문자열 날짜 구분 기호를 포함 하는 경우 특정 날짜 구분 기호로 "/" 사용자 지정 형식 지정자를 대체 하는 구문 분석 하거나 서식 지정 메서드에 의존 하는 대신 날짜 구분 기호를 명시적으로 지정 해야 합니다.If your custom date and time format strings include date separators, you should explicitly specify a date separator instead of relying on the parsing or formatting method that replaces the "/" custom format specifier with a particular date separator. 예를 들어, MM-DD-yyyy 패턴을 가져오려면 "MM DD yyyy" 패턴을 사용 합니다.For example, to obtain the pattern MM-DD-yyyy, use the pattern "MM-DD-yyyy".

적용 대상

추가 정보