DateTime.TryParseExact 메서드

정의

날짜 및 시간에 대한 지정된 문자열 표현을 해당 DateTime으로 변환합니다.Converts the specified string representation of a date and time to its DateTime equivalent. 문자열 표현의 형식이 지정된 형식과 정확하게 일치해야 합니다.The format of the string representation must match a specified format exactly. 이 메서드는 변환이 성공했는지 아니면 실패했는지를 나타내는 값을 반환합니다.The method returns a value that indicates whether the conversion succeeded.

오버로드

TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, DateTimeStyles, DateTime)

지정된 형식, 문화권별 형식 정보 및 스타일을 사용하여 날짜 및 시간의 지정된 범위 표현을 해당하는 DateTime(으)로 변환합니다.Converts the specified span representation of a date and time to its DateTime equivalent using the specified format, culture-specific format information, and style. 문자열 표현의 형식이 지정된 형식과 정확하게 일치해야 합니다.The format of the string representation must match the specified format exactly. 이 메서드는 변환이 성공했는지 아니면 실패했는지를 나타내는 값을 반환합니다.The method returns a value that indicates whether the conversion succeeded.

TryParseExact(ReadOnlySpan<Char>, String[], IFormatProvider, DateTimeStyles, DateTime)

날짜와 시간에 대한 지정된 문자 범위를 해당하는 DateTime(으)로 변환하고, 변환에 성공했는지를 나타내는 값을 반환합니다.Converts the specified char span of a date and time to its DateTime equivalent and returns a value that indicates whether the conversion succeeded.

TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime)

지정된 형식, 문화권별 형식 정보 및 스타일을 사용하여 날짜 및 시간의 지정된 문자열 표현을 해당 DateTime으로 변환합니다.Converts the specified string representation of a date and time to its DateTime equivalent using the specified format, culture-specific format information, and style. 문자열 표현의 형식이 지정된 형식과 정확하게 일치해야 합니다.The format of the string representation must match the specified format exactly. 이 메서드는 변환이 성공했는지 아니면 실패했는지를 나타내는 값을 반환합니다.The method returns a value that indicates whether the conversion succeeded.

TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime)

지정된 형식 배열, 문화권별 형식 정보 및 스타일을 사용하여 지정된 날짜와 시간의 문자열 표현을 해당 DateTime 표현으로 변환합니다.Converts the specified string representation of a date and time to its DateTime equivalent using the specified array of formats, culture-specific format information, and style. 문자열 표현 형식은 지정된 형식과 정확히 일치해야 합니다.The format of the string representation must match at least one of the specified formats exactly. 이 메서드는 변환이 성공했는지 아니면 실패했는지를 나타내는 값을 반환합니다.The method returns a value that indicates whether the conversion succeeded.

설명

중요

일본어 달력의 시대는 천황 통치 기간을 기준으로 하므로 변경되어야 합니다.Eras in the Japanese calendars are based on the emperor's reign and are therefore expected to change. 예를 들어 2019년 5월 1일은 JapaneseCalendarJapaneseLunisolarCalendar에서 레이와 시대의 시작을 나타냅니다.For example, May 1, 2019 marked the beginning of the Reiwa era in the JapaneseCalendar and JapaneseLunisolarCalendar. 이러한 시대 변경 내용은 해당 달력을 사용하는 모든 애플리케이션에 영향을 줍니다.Such a change of era affects all applications that use these calendars. 자세한 내용 및 현재 애플리케이션이 영향을 받는지 확인하는 방법은 .NET에서 일본식 달력의 새로운 세대 처리를 참조하세요.See Handling a new era in the Japanese calendar in .NET for more information and to determine whether your applications are affected. Windows 시스템에서 애플리케이션을 테스트하여 세대 변화에 대한 준비 상태를 확인하는 방법은 일본어 세대 변경을 위한 애플리케이션 준비를 참조하세요.See Prepare your application for the Japanese era change for information on testing your applications on Windows systems to ensure their readiness for the era change. 여러 시대가 포함된 달력을 지원하는 .NET의 기능과 여러 시대를 지원하는 달력을 사용할 때 모범 사례에 대해서는 시대 작업을 참조하세요.See Working with eras for features in .NET that support calendars with multiple eras and for best practices when working with calendars that support multiple eras.

TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, DateTimeStyles, DateTime)

지정된 형식, 문화권별 형식 정보 및 스타일을 사용하여 날짜 및 시간의 지정된 범위 표현을 해당하는 DateTime(으)로 변환합니다.Converts the specified span representation of a date and time to its DateTime equivalent using the specified format, culture-specific format information, and style. 문자열 표현의 형식이 지정된 형식과 정확하게 일치해야 합니다.The format of the string representation must match the specified format exactly. 이 메서드는 변환이 성공했는지 아니면 실패했는지를 나타내는 값을 반환합니다.The method returns a value that indicates whether the conversion succeeded.

public:
 static bool TryParseExact(ReadOnlySpan<char> s, ReadOnlySpan<char> format, IFormatProvider ^ provider, System::Globalization::DateTimeStyles style, [Runtime::InteropServices::Out] DateTime % result);
public static bool TryParseExact (ReadOnlySpan<char> s, ReadOnlySpan<char> format, IFormatProvider? provider, System.Globalization.DateTimeStyles style, out DateTime result);
public static bool TryParseExact (ReadOnlySpan<char> s, ReadOnlySpan<char> format, IFormatProvider provider, System.Globalization.DateTimeStyles style, out DateTime result);
static member TryParseExact : ReadOnlySpan<char> * ReadOnlySpan<char> * IFormatProvider * System.Globalization.DateTimeStyles * DateTime -> bool
Public Shared Function TryParseExact (s As ReadOnlySpan(Of Char), format As ReadOnlySpan(Of Char), provider As IFormatProvider, style As DateTimeStyles, ByRef result As DateTime) As Boolean

매개 변수

s
ReadOnlySpan<Char>

변환할 날짜와 시간을 나타내는 문자를 포함하는 범위입니다.A span containing the characters representing a date and time to convert.

format
ReadOnlySpan<Char>

s의 필수 형식입니다.The required format of s.

provider
IFormatProvider

s에 대한 문화권별 형식 지정 정보를 제공하는 개체입니다.An object that supplies culture-specific formatting information about s.

style
DateTimeStyles

s에 사용할 수 있는 형식을 나타내는 열거형 값 하나 이상의 비트 조합입니다.A bitwise combination of one or more enumeration values that indicate the permitted format of s.

result
DateTime

이 메서드는 변환이 성공한 경우 DateTime에 포함된 날짜와 시간에 해당하는 s 값을 반환하고, 변환이 실패한 경우 MinValue를 반환합니다.When this method returns, contains the DateTime value equivalent to the date and time contained in s, if the conversion succeeded, or MinValue if the conversion failed. s 또는 format 매개 변수가 null이거나, 빈 문자열이거나, format에 지정된 패턴에 해당하는 날짜와 시간을 포함하지 않는 경우 변환에 실패합니다.The conversion fails if either the s or format parameter is null, is an empty string, or does not contain a date and time that correspond to the pattern specified in format. 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.This parameter is passed uninitialized.

반환

Boolean

s이(가) 성공적으로 변환되었으면 true이고, 그렇지 않으면 false입니다.true if s was converted successfully; otherwise, false.

적용 대상

TryParseExact(ReadOnlySpan<Char>, String[], IFormatProvider, DateTimeStyles, DateTime)

날짜와 시간에 대한 지정된 문자 범위를 해당하는 DateTime(으)로 변환하고, 변환에 성공했는지를 나타내는 값을 반환합니다.Converts the specified char span of a date and time to its DateTime equivalent and returns a value that indicates whether the conversion succeeded.

public:
 static bool TryParseExact(ReadOnlySpan<char> s, cli::array <System::String ^> ^ formats, IFormatProvider ^ provider, System::Globalization::DateTimeStyles style, [Runtime::InteropServices::Out] DateTime % result);
public static bool TryParseExact (ReadOnlySpan<char> s, string?[]? formats, IFormatProvider? provider, System.Globalization.DateTimeStyles style, out DateTime? result);
public static bool TryParseExact (ReadOnlySpan<char> s, string[] formats, IFormatProvider provider, System.Globalization.DateTimeStyles style, out DateTime result);
static member TryParseExact : ReadOnlySpan<char> * string[] * IFormatProvider * System.Globalization.DateTimeStyles * DateTime -> bool
Public Shared Function TryParseExact (s As ReadOnlySpan(Of Char), formats As String(), provider As IFormatProvider, style As DateTimeStyles, ByRef result As DateTime) As Boolean

매개 변수

s
ReadOnlySpan<Char>

구문 분석할 문자열이 포함된 범위입니다.The span containing the string to parse.

formats
String[]

s에 허용되는 형식의 배열입니다.An array of allowable formats of s.

provider
IFormatProvider

s에 대한 문화권별 형식 지정 정보를 제공하는 개체입니다.An object that supplies culture-specific formatting information about s.

style
DateTimeStyles

현재 표준 시간대 또는 현재 날짜와 비교하여 구문 분석된 날짜를 해석하는 방법을 정의하는 열거형 값의 비트 조합입니다.A bitwise combination of enumeration values that defines how to interpret the parsed date in relation to the current time zone or the current date. 지정할 일반적인 값은 None입니다.A typical value to specify is None.

result
DateTime

이 메서드는 변환이 성공한 경우 DateTime에 포함된 날짜와 시간에 해당하는 s 값을 반환하고, 변환이 실패한 경우 MinValue를 반환합니다.When this method returns, contains the DateTime value equivalent to the date and time contained in s, if the conversion succeeded, or MinValue if the conversion failed. s 매개 변수가 null 또는 Empty이거나, 날짜 및 시간에 유효한 문자열 표현을 포함하고 있지 않은 경우 변환에 실패합니다.The conversion fails if the s parameter is null, is Empty, or does not contain a valid string representation of a date and time. 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.This parameter is passed uninitialized.

반환

Boolean

true 매개 변수가 변환되었으면 s이고, 그렇지 않으면 false입니다.true if the s parameter was converted successfully; otherwise, false.

적용 대상

TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime)

지정된 형식, 문화권별 형식 정보 및 스타일을 사용하여 날짜 및 시간의 지정된 문자열 표현을 해당 DateTime으로 변환합니다.Converts the specified string representation of a date and time to its DateTime equivalent using the specified format, culture-specific format information, and style. 문자열 표현의 형식이 지정된 형식과 정확하게 일치해야 합니다.The format of the string representation must match the specified format exactly. 이 메서드는 변환이 성공했는지 아니면 실패했는지를 나타내는 값을 반환합니다.The method returns a value that indicates whether the conversion succeeded.

public:
 static bool TryParseExact(System::String ^ s, System::String ^ format, IFormatProvider ^ provider, System::Globalization::DateTimeStyles style, [Runtime::InteropServices::Out] DateTime % result);
public static bool TryParseExact (string s, string format, IFormatProvider provider, System.Globalization.DateTimeStyles style, out DateTime result);
public static bool TryParseExact (string? s, string? format, IFormatProvider? provider, System.Globalization.DateTimeStyles style, out DateTime? result);
static member TryParseExact : string * string * IFormatProvider * System.Globalization.DateTimeStyles * DateTime -> bool
Public Shared Function TryParseExact (s As String, format As String, provider As IFormatProvider, style As DateTimeStyles, ByRef result As DateTime) As Boolean

매개 변수

s
String

날짜와 시간이 포함된 변환할 문자열입니다.A string containing a date and time to convert.

format
String

s의 필수 형식입니다.The required format of s.

provider
IFormatProvider

s에 대한 문화권별 형식 지정 정보를 제공하는 개체입니다.An object that supplies culture-specific formatting information about s.

style
DateTimeStyles

s에 사용할 수 있는 형식을 나타내는 열거형 값 하나 이상의 비트 조합입니다.A bitwise combination of one or more enumeration values that indicate the permitted format of s.

result
DateTime

이 메서드는 변환이 성공한 경우 DateTime에 포함된 날짜와 시간에 해당하는 s 값을 반환하고, 변환이 실패한 경우 MinValue를 반환합니다.When this method returns, contains the DateTime value equivalent to the date and time contained in s, if the conversion succeeded, or MinValue if the conversion failed. s 또는 format 매개 변수가 null이거나, 빈 문자열이거나, format에 지정된 패턴에 해당하는 날짜와 시간을 포함하지 않는 경우 변환에 실패합니다.The conversion fails if either the s or format parameter is null, is an empty string, or does not contain a date and time that correspond to the pattern specified in format. 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.This parameter is passed uninitialized.

반환

Boolean

s이(가) 성공적으로 변환되었으면 true이고, 그렇지 않으면 false입니다.true if s was converted successfully; otherwise, false.

예외

styles는 유효한 DateTimeStyles 값이 아닙니다.styles is not a valid DateTimeStyles value.

-또는--or- stylesDateTimeStyles 값의 잘못된 조합이 포함되어 있습니다(예: AssumeLocalAssumeUniversal 조합).styles contains an invalid combination of DateTimeStyles values (for example, both AssumeLocal and AssumeUniversal).

예제

다음 예제는 DateTime.TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime) 메서드.The following example demonstrates the DateTime.TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime) method. styles DateTimeStyles.None 에서 선행 공백을 허용 하지 않기 때문에 매개 변수가 이면 문자열 "5/01/2009 8:30 AM"을 성공적으로 구문 분석할 수 없습니다 format .Note that the string " 5/01/2009 8:30 AM" cannot be parsed successfully when the styles parameter equals DateTimeStyles.None because leading spaces are not allowed by format. 또한 문자열 "5/01/2009 09:00"은 format "mm/dd/yyyyhh: MM"의로 성공적으로 구문 분석할 수 없습니다. 날짜 문자열은 필요에 따라 앞에 0이 있는 월 번호 앞에 오지 않습니다 format .Additionally, the string "5/01/2009 09:00" cannot be parsed successfully with a format of "MM/dd/yyyyhh:mm" because the date string does not precede the month number with a leading zero, as format requires.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      CultureInfo enUS = new CultureInfo("en-US");
      string dateString;
      DateTime dateValue;

      // Parse date with no style flags.
      dateString = " 5/01/2009 8:30 AM";
      if (DateTime.TryParseExact(dateString, "g", enUS,
                                 DateTimeStyles.None, out dateValue))
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue,
                           dateValue.Kind);
      else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString);

      // Allow a leading space in the date string.
      if (DateTime.TryParseExact(dateString, "g", enUS,
                                 DateTimeStyles.AllowLeadingWhite, out dateValue))
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue,
                           dateValue.Kind);
      else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString);

      // Use custom formats with M and MM.
      dateString = "5/01/2009 09:00";
      if (DateTime.TryParseExact(dateString, "M/dd/yyyy hh:mm", enUS,
                                 DateTimeStyles.None, out dateValue))
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue,
                           dateValue.Kind);
      else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString);

      // Allow a leading space in the date string.
      if (DateTime.TryParseExact(dateString, "MM/dd/yyyy hh:mm", enUS,
                              DateTimeStyles.None, out dateValue))
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue,
                           dateValue.Kind);
      else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString);

      // Parse a string with time zone information.
      dateString = "05/01/2009 01:30:42 PM -05:00";
      if (DateTime.TryParseExact(dateString, "MM/dd/yyyy hh:mm:ss tt zzz", enUS,
                              DateTimeStyles.None, out dateValue))
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue,
                           dateValue.Kind);
      else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString);

      // Allow a leading space in the date string.
      if (DateTime.TryParseExact(dateString, "MM/dd/yyyy hh:mm:ss tt zzz", enUS,
                              DateTimeStyles.AdjustToUniversal, out dateValue))
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue,
                           dateValue.Kind);
      else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString);

      // Parse a string representing UTC.
      dateString = "2008-06-11T16:11:20.0904778Z";
      if (DateTime.TryParseExact(dateString, "o", CultureInfo.InvariantCulture,
                                     DateTimeStyles.None, out dateValue))
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue,
                           dateValue.Kind);
      else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString);

      if (DateTime.TryParseExact(dateString, "o", CultureInfo.InvariantCulture,
                                 DateTimeStyles.RoundtripKind, out dateValue))
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue,
                           dateValue.Kind);
      else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString);
   }
}
// The example displays the following output:
//    ' 5/01/2009 8:30 AM' is not in an acceptable format.
//    Converted ' 5/01/2009 8:30 AM' to 5/1/2009 8:30:00 AM (Unspecified).
//    Converted '5/01/2009 09:00' to 5/1/2009 9:00:00 AM (Unspecified).
//    '5/01/2009 09:00' is not in an acceptable format.
//    Converted '05/01/2009 01:30:42 PM -05:00' to 5/1/2009 11:30:42 AM (Local).
//    Converted '05/01/2009 01:30:42 PM -05:00' to 5/1/2009 6:30:42 PM (Utc).
//    Converted '2008-06-11T16:11:20.0904778Z' to 6/11/2008 9:11:20 AM (Local).
//    Converted '2008-06-11T16:11:20.0904778Z' to 6/11/2008 4:11:20 PM (Utc).
Imports System.Globalization

Public Module Example
   Public Sub Main()
      Dim enUS As New CultureInfo("en-US") 
      Dim dateString As String
      Dim dateValue As Date
      
      ' Parse date with no style flags.
      dateString = " 5/01/2009 8:30 AM"
      If Date.TryParseExact(dateString, "g", enUS, _
                            DateTimeStyles.None, dateValue) Then
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, _
                           dateValue.Kind)
      Else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString)
      End If
      ' Allow a leading space in the date string.
      If Date.TryParseExact(dateString, "g", enUS, _
                            DateTimeStyles.AllowLeadingWhite, dateValue) Then
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, _
                           dateValue.Kind)
      Else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString)
      End If
      
      ' Use custom formats with M and MM.
      dateString = "5/01/2009 09:00"
      If Date.TryParseExact(dateString, "M/dd/yyyy hh:mm", enUS, _
                            DateTimeStyles.None, dateValue) Then
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, _
                           dateValue.Kind)
      Else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString)
      End If
      ' Allow a leading space in the date string.
      If Date.TryParseExact(dateString, "MM/dd/yyyy hh:mm", enUS, _
                            DateTimeStyles.None, dateValue) Then
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, _
                           dateValue.Kind)
      Else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString)
      End If

      ' Parse a string with time zone information.
      dateString = "05/01/2009 01:30:42 PM -05:00" 
      If Date.TryParseExact(dateString, "MM/dd/yyyy hh:mm:ss tt zzz", enUS, _
                            DateTimeStyles.None, dateValue) Then
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, _
                           dateValue.Kind)
      Else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString)
      End If
      ' Allow a leading space in the date string.
      If Date.TryParseExact(dateString, "MM/dd/yyyy hh:mm:ss tt zzz", enUS, _
                            DateTimeStyles.AdjustToUniversal, dateValue) Then
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, _
                           dateValue.Kind)
      Else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString)
      End If
           
      ' Parse a string representing UTC.
      dateString = "2008-06-11T16:11:20.0904778Z"
      If Date.TryParseExact(dateString, "o", CultureInfo.InvariantCulture, _
                                     DateTimeStyles.None, dateValue) Then
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, _
                           dateValue.Kind)
      Else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString)
      End If
      
      If Date.TryParseExact(dateString, "o", CultureInfo.InvariantCulture, _
                            DateTimeStyles.RoundtripKind, dateValue) Then
         Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, _
                           dateValue.Kind)
      Else
         Console.WriteLine("'{0}' is not in an acceptable format.", dateString)
      End If
   End Sub
End Module
' The example displays the following output:
'    ' 5/01/2009 8:30 AM' is not in an acceptable format.
'    Converted ' 5/01/2009 8:30 AM' to 5/1/2009 8:30:00 AM (Unspecified).
'    Converted '5/01/2009 09:00' to 5/1/2009 9:00:00 AM (Unspecified).
'    '5/01/2009 09:00' is not in an acceptable format.
'    Converted '05/01/2009 01:30:42 PM -05:00' to 5/1/2009 11:30:42 AM (Local).
'    Converted '05/01/2009 01:30:42 PM -05:00' to 5/1/2009 6:30:42 PM (Utc).
'    Converted '2008-06-11T16:11:20.0904778Z' to 6/11/2008 9:11:20 AM (Local).
'    Converted '2008-06-11T16:11:20.0904778Z' to 6/11/2008 4:11:20 PM (Utc).

설명

DateTime.TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime)메서드는 매개 변수에 의해 정의 된 형식에 있어야 하는 날짜의 문자열 표현을 구문 분석 합니다 format .The DateTime.TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime) method parses the string representation of a date, which must be in the format defined by the format parameter. DateTime.ParseExact(String, String, IFormatProvider, DateTimeStyles) TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime) 변환에 실패 하는 경우 메서드가 예외를 throw 하지 않는다는 점을 제외 하 고는 메서드와 비슷합니다.It is similar to the DateTime.ParseExact(String, String, IFormatProvider, DateTimeStyles) method, except that the TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime) method does not throw an exception if the conversion fails.

s매개 변수는 구문 분석할 날짜와 시간을 포함 하며 매개 변수에 의해 정의 된 형식 이어야 합니다 format .The s parameter contains the date and time to parse and must be in a format defined by the format parameter. 에 날짜, 시간 및 표준 시간대 요소가 있는 경우에 s 지정 된 순서에도 나타나야 합니다 format .If date, time, and time zone elements are present in s, they must also appear in the order specified by format. 에서 format time 요소가 없는 날짜를 정의 하 고 구문 분석 작업이 성공 하면 결과 DateTime 값의 시간은 자정 (00:00:00)입니다.If format defines a date with no time element and the parse operation succeeds, the resulting DateTime value has a time of midnight (00:00:00). format 날짜 요소를 사용 하지 않고 시간을 정의 하 고 구문 분석 작업이 성공 하면 DateTime 기본적으로 결과 값은의 날짜를 사용 하 고,에는 DateTime.Now.Date DateTime.MinValue.Date 플래그가 포함 된 경우 날짜 styles DateTimeStyles.NoCurrentDateDefault 를 포함 합니다.If format defines a time with no date element and the parse operation succeeds, the resulting DateTime value by default has a date of DateTime.Now.Date, or it has a date of DateTime.MinValue.Date if styles includes the DateTimeStyles.NoCurrentDateDefault flag. 매개 style 변수는 s 매개 변수에 선행, 내부 또는 후행 공백 문자를 포함할 수 있는지 여부를 결정 합니다.The style parameter determines whether the s parameter can contain leading, inner, or trailing white space characters.

s에 표준 시간대 정보가 없는 경우 반환 되는 Kind 개체의 속성은 DateTime DateTimeKind.Unspecified 입니다.If s contains no time zone information, the Kind property of the returned DateTime object is DateTimeKind.Unspecified. 이 동작은 속성이 인 값을 반환 하는 플래그를 사용 DateTimeStyles.AssumeLocal DateTime Kind DateTimeKind.Local 하거나 DateTimeStyles.AssumeUniversal 속성이 인 DateTimeStyles.AdjustToUniversal 값을 반환 하는 및 플래그를 DateTime Kind DateTimeKind.Utc 사용 하 여 변경할 수 있습니다.This behavior can be changed by using the DateTimeStyles.AssumeLocal flag, which returns a DateTime value whose Kind property is DateTimeKind.Local, or by using the DateTimeStyles.AssumeUniversal and DateTimeStyles.AdjustToUniversal flags, which returns a DateTime value whose Kind property is DateTimeKind.Utc. S에 표준 시간대 정보가 포함 된 경우, 필요한 경우 시간이 현지 시간으로 변환 되 고 반환 된 Kind 개체의 속성이 DateTime 로 설정 됩니다 DateTimeKind.Local .If s contains time zone information, the time is converted to local time, if necessary, and the Kind property of the returned DateTime object is set to DateTimeKind.Local. 플래그를 사용 하 여 DateTimeStyles.RoundtripKind utc (협정 세계시)를 현지 시간으로 변환 하지 않고 속성을로 설정 하 여이 동작을 변경할 수 있습니다 Kind DateTimeKind.Utc .This behavior can be changed by using the DateTimeStyles.RoundtripKind flag to not convert Coordinated Universal Time (UTC) to a local time and set the Kind property to DateTimeKind.Utc.

매개 변수에는 format 예상 되는 매개 변수 형식에 해당 하는 패턴이 포함 s 됩니다.The format parameter contains a pattern that corresponds to the expected format of the s parameter. 매개 변수의 패턴은 format 사용자 지정 날짜 및 시간 서식 문자열 테이블의 하나 이상의 사용자 지정 형식 지정자 또는 표준 날짜 및 시간 형식 문자열 테이블에서 미리 정의 된 패턴을 식별 하는 단일 표준 형식 지정자로 구성 됩니다.The pattern in the format parameter consists of one or more custom format specifiers from the Custom Date and Time Format Strings table, or a single standard format specifier, which identifies a predefined pattern, from the Standard Date and Time Format Strings table.

사용자 지정 형식 패턴에서 날짜 또는 시간 구분 기호를 사용 하지 않는 경우 매개 변수에 대 한 고정 문화권과 provider 각 사용자 지정 형식 지정자의 가장 넓은 형식을 사용 합니다.If you do not use date or time separators in a custom format pattern, use the invariant culture for the provider parameter and the widest form of each custom format specifier. 예를 들어 패턴에서 시간을 지정 하려는 경우 좁은 형식 ("H") 대신 보다 넓은 형식의 "HH"를 지정 합니다.For example, if you want to specify hours in the pattern, specify the wider form, "HH", instead of the narrower form, "H".

참고

s구문 분석 작업이 성공 하려면 단일 형식을 준수 하도록 요구 하는 대신 메서드를 호출 DateTime.TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime) 하 고 허용 되는 여러 형식을 지정할 수 있습니다.Rather than requiring that s conform to a single format for the parse operation to succeed, you can call the DateTime.TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime) method and specify multiple permitted formats. 이렇게 하면 구문 분석 작업이 성공할 가능성이 높아집니다.This makes the parse operation more likely to succeed.

에서 사용 되는 특정 날짜 및 시간 기호 및 문자열 (예: 특정 언어의 요일 이름)은 s 매개 변수에 의해 정의 됩니다 provider s format .가 표준 형식 지정자 문자열인 경우의 정확한 형식입니다.The particular date and time symbols and strings (such as the names of the days of the week in a particular language) used in s are defined by the provider parameter, as is the precise format of s if format is a standard format specifier string. provider매개 변수는 다음 중 하나일 수 있습니다.The provider parameter can be any of the following:

provider가 이면 null CultureInfo 현재 문화권에 해당 하는 개체가 사용 됩니다.If provider is null, the CultureInfo object that corresponds to the current culture is used.

styles매개 변수에는 DateTimeStyles 에 의해 정의 되지 않은 공백이 format 표시 될 수 있는지 여부와 s 구문 분석 작업의 정확한 동작을 제어 하는 열거형의 멤버가 하나 이상 포함 되어 있습니다.The styles parameter includes one or more members of the DateTimeStyles enumeration that determine whether and where white space not defined by format can appear in s and that control the precise behavior of the parse operation. 다음 표에서는 열거형의 각 멤버가 DateTimeStyles 메서드의 작업에 영향을 주는 방법에 대해 설명 합니다 TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime) .The following table describes how each member of the DateTimeStyles enumeration affects the operation of the TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime) method.

DateTimeStyles 멤버DateTimeStyles member 설명Description
AdjustToUniversal 는를 구문 분석 s 하 고 필요한 경우 UTC로 변환 합니다.Parses s and, if necessary, converts it to UTC. s 표준 시간대 오프셋이 포함 되어 있거나 s 에 표준 시간대 정보가 포함 되어 있지 않지만 styles 플래그가 포함 된 경우 DateTimeStyles.AssumeLocal 메서드는 문자열을 구문 분석 하 ToUniversalTime 고,를 호출 하 여 반환 된 DateTime 값을 UTC로 변환 하 고, 속성을로 설정 합니다 Kind DateTimeKind.Utc .If s includes a time zone offset, or if s contains no time zone information but styles includes the DateTimeStyles.AssumeLocal flag, the method parses the string, calls ToUniversalTime to convert the returned DateTime value to UTC, and sets the Kind property to DateTimeKind.Utc. s가 UTC를 나타내는지 또는 s 에 표준 시간대 정보가 포함 되어 있지 않지만 플래그를 포함 하는 경우 styles DateTimeStyles.AssumeUniversal 메서드는 문자열을 구문 분석 하 고 반환 된 값에 대해 표준 시간대 변환을 수행 하 DateTime 고 속성을로 설정 합니다 Kind DateTimeKind.Utc .If s indicates that it represents UTC, or if s does not contain time zone information but styles includes the DateTimeStyles.AssumeUniversal flag, the method parses the string, performs no time zone conversion on the returned DateTime value, and sets the Kind property to DateTimeKind.Utc. 다른 모든 경우에는 플래그가 적용 되지 않습니다.In all other cases, the flag has no effect.
AllowInnerWhite 에서 정의 하지 않은 공백이 format 개별 날짜 또는 시간 요소 사이에 나타날 수 있도록 지정 합니다.Specifies that white space not defined by format can appear between any individual date or time element.
AllowLeadingWhite 에서 정의 하지 않은 공백이 format 의 시작 부분에 나타날 수 있도록 지정 합니다 s .Specifies that white space not defined by format can appear at the beginning of s.
AllowTrailingWhite 에서 정의 하지 않은 공백이 format 끝에 나타날 수 있도록 지정 합니다 s .Specifies that white space not defined by format can appear at the end of s.
AllowWhiteSpaces s에서 정의 하지 않은 선행, 내부 및 후행 공백을 포함할 수 있도록 지정 합니다 format .Specifies that s may contain leading, inner, and trailing white spaces not defined by format.
AssumeLocal s에 표준 시간대 정보가 부족 한 경우 현지 시간을 나타내는 것으로 간주 하도록 지정 합니다.Specifies that if s lacks any time zone information, it is assumed to represent a local time. 플래그가 없으면 DateTimeStyles.AdjustToUniversal Kind 반환 된 값의 속성이 DateTime 로 설정 됩니다 DateTimeKind.Local .Unless the DateTimeStyles.AdjustToUniversal flag is present, the Kind property of the returned DateTime value is set to DateTimeKind.Local.
AssumeUniversal s에 표준 시간대 정보가 부족 한 경우 UTC를 나타내는 것으로 간주 하도록 지정 합니다.Specifies that if s lacks any time zone information, it is assumed to represent UTC. 플래그가 없으면 DateTimeStyles.AdjustToUniversal 메서드는 반환 된 DateTime 값을 UTC에서 현지 시간으로 변환 하 고 해당 Kind 속성을로 설정 DateTimeKind.Local 합니다.Unless the DateTimeStyles.AdjustToUniversal flag is present, the method converts the returned DateTime value from UTC to local time and sets its Kind property to DateTimeKind.Local.
NoCurrentDateDefault s 날짜 정보가 없는 시간이 포함 된 경우 반환 값의 날짜는로 설정 됩니다 DateTime.MinValue.Date .If s contains time without date information, the date of the return value is set to DateTime.MinValue.Date.
None s매개 변수는 기본값을 사용 하 여 구문 분석 됩니다.The s parameter is parsed using default values. 에 있는 공백을 제외한 공백은 허용 되지 않습니다 format .No white space other than that present in format is allowed. s 날짜 구성 요소가 없는 경우 반환 된 값의 날짜는 DateTime 1/1/0001로 설정 됩니다.If s lacks a date component, the date of the returned DateTime value is set to 1/1/0001. s 표준 시간대 정보가 없는 경우 Kind 반환 되는 개체의 속성은 DateTime 로 설정 됩니다 DateTimeKind.Unspecified .If s contains no time zone information, the Kind property of the returned DateTime object is set to DateTimeKind.Unspecified. 에 표준 시간대 정보가 있는 경우 s 시간은 현지 시간으로 변환 되 고 Kind 반환 된 개체의 속성은 DateTime 로 설정 됩니다 DateTimeKind.Local .If time zone information is present in s, the time is converted to local time and the Kind property of the returned DateTime object is set to DateTimeKind.Local.
RoundtripKind 표준 시간대 정보를 포함 하는 문자열의 경우는 DateTime 속성이로 설정 된 값으로의 변환을 방지 하려고 시도 합니다 Kind DateTimeKind.Local .For strings that contain time zone information, tries to prevent the conversion to a DateTime value with its Kind property set to DateTimeKind.Local. 이 플래그는 주로 UTC 시간을 현지 시간으로 변환 하는 것을 방지 합니다.This flag primarily prevents the conversion of UTC times to local times.

호출자 참고

.NET Framework 4에서 TryParseExact 메서드는 false 구문 분석할 문자열에 시간 구성 요소와 계약에 없는 AM/PM 지정자를 포함 하는 경우를 반환 합니다.In the .NET Framework 4, the TryParseExact method returns false if the string to be parsed contains an hour component and an AM/PM designator that are not in agreement. .NET Framework 3.5 이전 버전에서 AM/PM 지정자는 무시 됩니다.In the .NET Framework 3.5 and earlier versions, the AM/PM designator is ignored.

추가 정보

적용 대상

TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime)

지정된 형식 배열, 문화권별 형식 정보 및 스타일을 사용하여 지정된 날짜와 시간의 문자열 표현을 해당 DateTime 표현으로 변환합니다.Converts the specified string representation of a date and time to its DateTime equivalent using the specified array of formats, culture-specific format information, and style. 문자열 표현 형식은 지정된 형식과 정확히 일치해야 합니다.The format of the string representation must match at least one of the specified formats exactly. 이 메서드는 변환이 성공했는지 아니면 실패했는지를 나타내는 값을 반환합니다.The method returns a value that indicates whether the conversion succeeded.

public:
 static bool TryParseExact(System::String ^ s, cli::array <System::String ^> ^ formats, IFormatProvider ^ provider, System::Globalization::DateTimeStyles style, [Runtime::InteropServices::Out] DateTime % result);
public static bool TryParseExact (string s, string[] formats, IFormatProvider provider, System.Globalization.DateTimeStyles style, out DateTime result);
public static bool TryParseExact (string? s, string?[]? formats, IFormatProvider? provider, System.Globalization.DateTimeStyles style, out DateTime? result);
static member TryParseExact : string * string[] * IFormatProvider * System.Globalization.DateTimeStyles * DateTime -> bool
Public Shared Function TryParseExact (s As String, formats As String(), provider As IFormatProvider, style As DateTimeStyles, ByRef result As DateTime) As Boolean

매개 변수

s
String

변환할 날짜 및 시간이 포함된 문자열입니다.A string that contains a date and time to convert.

formats
String[]

s에 허용되는 형식의 배열입니다.An array of allowable formats of s.

provider
IFormatProvider

s에 대한 문화권별 서식 지정 정보를 제공하는 개체입니다.An object that supplies culture-specific format information about s.

style
DateTimeStyles

s에 사용할 수 있는 형식을 나타내는 열거형 값의 비트 조합입니다.A bitwise combination of enumeration values that indicates the permitted format of s. 지정할 일반적인 값은 None입니다.A typical value to specify is None.

result
DateTime

이 메서드는 변환이 성공한 경우 DateTime에 포함된 날짜와 시간에 해당하는 s 값을 반환하고, 변환이 실패한 경우 MinValue를 반환합니다.When this method returns, contains the DateTime value equivalent to the date and time contained in s, if the conversion succeeded, or MinValue if the conversion failed. s 또는 formatsnull이거나, s 또는 formats의 요소가 빈 문자열이거나, s의 형식 패턴 중 하나 이상에서 formats의 형식이 정확하게 지정되지 않은 경우 변환에 실패합니다.The conversion fails if s or formats is null, s or an element of formats is an empty string, or the format of s is not exactly as specified by at least one of the format patterns in formats. 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.This parameter is passed uninitialized.

반환

Boolean

true 매개 변수가 변환되었으면 s이고, 그렇지 않으면 false입니다.true if the s parameter was converted successfully; otherwise, false.

예외

styles는 유효한 DateTimeStyles 값이 아닙니다.styles is not a valid DateTimeStyles value.

-또는--or- stylesDateTimeStyles 값의 잘못된 조합이 포함되어 있습니다(예: AssumeLocalAssumeUniversal 조합).styles contains an invalid combination of DateTimeStyles values (for example, both AssumeLocal and AssumeUniversal).

예제

다음 예제에서는 메서드를 사용 하 여 DateTime.TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime) 가능한 여러 형식의 문자열이 성공적으로 구문 분석 될 수 있도록 합니다.The following example uses the DateTime.TryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime) method to ensure that a string in a number of possible formats can be successfully parsed .

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] formats= {"M/d/yyyy h:mm:ss tt", "M/d/yyyy h:mm tt",
                         "MM/dd/yyyy hh:mm:ss", "M/d/yyyy h:mm:ss",
                         "M/d/yyyy hh:mm tt", "M/d/yyyy hh tt",
                         "M/d/yyyy h:mm", "M/d/yyyy h:mm",
                         "MM/dd/yyyy hh:mm", "M/dd/yyyy hh:mm"};
      string[] dateStrings = {"5/1/2009 6:32 PM", "05/01/2009 6:32:05 PM",
                              "5/1/2009 6:32:00", "05/01/2009 06:32",
                              "05/01/2009 06:32:00 PM", "05/01/2009 06:32:00"};
      DateTime dateValue;

      foreach (string dateString in dateStrings)
      {
         if (DateTime.TryParseExact(dateString, formats,
                                    new CultureInfo("en-US"),
                                    DateTimeStyles.None,
                                    out dateValue))
            Console.WriteLine("Converted '{0}' to {1}.", dateString, dateValue);
         else
            Console.WriteLine("Unable to convert '{0}' to a date.", dateString);
      }
   }
}
// The example displays the following output:
//       Converted '5/1/2009 6:32 PM' to 5/1/2009 6:32:00 PM.
//       Converted '05/01/2009 6:32:05 PM' to 5/1/2009 6:32:05 PM.
//       Converted '5/1/2009 6:32:00' to 5/1/2009 6:32:00 AM.
//       Converted '05/01/2009 06:32' to 5/1/2009 6:32:00 AM.
//       Converted '05/01/2009 06:32:00 PM' to 5/1/2009 6:32:00 PM.
//       Converted '05/01/2009 06:32:00' to 5/1/2009 6:32:00 AM.
Imports System.Globalization

Public Module Example
   Public Sub Main()
      Dim formats() As String = {"M/d/yyyy h:mm:ss tt", "M/d/yyyy h:mm tt", _
                                 "MM/dd/yyyy hh:mm:ss", "M/d/yyyy h:mm:ss", _
                                 "M/d/yyyy hh:mm tt", "M/d/yyyy hh tt", _
                                 "M/d/yyyy h:mm", "M/d/yyyy h:mm", _
                                 "MM/dd/yyyy hh:mm", "M/dd/yyyy hh:mm"}
      Dim dateStrings() As String = {"5/1/2009 6:32 PM", "05/01/2009 6:32:05 PM", _
                                     "5/1/2009 6:32:00", "05/01/2009 06:32", _
                                     "05/01/2009 06:32:00 PM", "05/01/2009 06:32:00"} 

      Dim dateValue As DateTime
      
      For Each dateString As String In dateStrings
         If Date.TryParseExact(dateString, formats, _
                               New CultureInfo("en-US"), _
                               DateTimeStyles.None, _
                               dateValue) Then
            Console.WriteLine("Converted '{0}' to {1}.", dateString, dateValue)
         Else
            Console.WriteLine("Unable to convert '{0}' to a date.", dateString)
         End If                                               
      Next
   End Sub   
End Module
' The example displays the following output:
'       Converted '5/1/2009 6:32 PM' to 5/1/2009 6:32:00 PM.
'       Converted '05/01/2009 6:32:05 PM' to 5/1/2009 6:32:05 PM.
'       Converted '5/1/2009 6:32:00' to 5/1/2009 6:32:00 AM.
'       Converted '05/01/2009 06:32' to 5/1/2009 6:32:00 AM.
'       Converted '05/01/2009 06:32:00 PM' to 5/1/2009 6:32:00 PM.
'       Converted '05/01/2009 06:32:00' to 5/1/2009 6:32:00 AM.

설명

DateTime.TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime)메서드는 매개 변수에 할당 된 패턴 중 하 나와 일치 하는 날짜의 문자열 표현을 구문 분석 합니다 formats .The DateTime.TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime) method parses the string representation of a date that matches any one of the patterns assigned to the formats parameter. 메서드와 유사 합니다 DateTime.ParseExact(String, String[], IFormatProvider, DateTimeStyles) . 단, TryParseExact 변환에 실패 하는 경우 메서드는 예외를 throw 하지 않습니다.It is like the DateTime.ParseExact(String, String[], IFormatProvider, DateTimeStyles) method, except the TryParseExact method does not throw an exception if the conversion fails.

s매개 변수는 구문 분석할 날짜 및 시간을 포함 합니다.The s parameter contains the date and time to parse. s매개 변수에 시간만 포함 하 고 날짜를 포함 하지 않으면 매개 변수에 플래그가 포함 되지 않은 경우 현재 날짜가 사용 됩니다 .이 경우 style DateTimeStyles.NoCurrentDateDefault 기본 날짜 ( DateTime.Date.MinValue )가 사용 됩니다.If the s parameter contains only a time and no date, the current date is used unless the style parameter includes the DateTimeStyles.NoCurrentDateDefault flag, in which case the default date (DateTime.Date.MinValue) is used. s매개 변수에 날짜만 포함 되 고 시간이 없으면 자정 (00:00:00)이 사용 됩니다.If the s parameter contains only a date and no time, midnight (00:00:00) is used. 매개 style 변수는 s 의 형식 문자열 중 하나에서 허용 하는 문자 이외의 선행, 내부 또는 후행 공백 문자를 매개 변수에 포함할 수 있는지 여부도 결정 합니다 formats .The style parameter also determines whether the s parameter can contain leading, inner, or trailing white space characters other than those permitted by one of the format strings in formats.

s에 표준 시간대 정보가 없는 경우 반환 되는 Kind 개체의 속성은 DateTime DateTimeKind.Unspecified 입니다.If s contains no time zone information, the Kind property of the returned DateTime object is DateTimeKind.Unspecified. 이 동작은 속성이 인 값을 반환 하는 플래그를 사용 DateTimeStyles.AssumeLocal DateTime Kind DateTimeKind.Local 하거나 DateTimeStyles.AssumeUniversal 속성이 인 DateTimeStyles.AdjustToUniversal 값을 반환 하는 및 플래그를 DateTime Kind DateTimeKind.Utc 사용 하 여 변경할 수 있습니다.This behavior can be changed by using the DateTimeStyles.AssumeLocal flag, which returns a DateTime value whose Kind property is DateTimeKind.Local, or by using the DateTimeStyles.AssumeUniversal and DateTimeStyles.AdjustToUniversal flags, which returns a DateTime value whose Kind property is DateTimeKind.Utc. S에 표준 시간대 정보가 포함 된 경우, 필요한 경우 시간이 현지 시간으로 변환 되 고 반환 된 Kind 개체의 속성이 DateTime 로 설정 됩니다 DateTimeKind.Local .If s contains time zone information, the time is converted to local time, if necessary, and the Kind property of the returned DateTime object is set to DateTimeKind.Local. 플래그를 사용 하 여 DateTimeStyles.RoundtripKind utc (협정 세계시)를 현지 시간으로 변환 하지 않고 속성을로 설정 하 여이 동작을 변경할 수 있습니다 Kind DateTimeKind.Utc .This behavior can be changed by using the DateTimeStyles.RoundtripKind flag to not convert Coordinated Universal Time (UTC) to a local time and set the Kind property to DateTimeKind.Utc.

formats매개 변수는 s 구문 분석 작업이 성공 하는 경우 정확히 일치 해야 하는 패턴의 배열을 포함 합니다.The formats parameter contains an array of patterns, one of which s must match exactly if the parse operation is to succeed. 매개 변수의 패턴은 formats 사용자 지정 날짜 및 시간 서식 문자열 테이블의 하나 이상의 사용자 지정 형식 지정자 또는 표준 날짜 및 시간 형식 문자열 테이블에서 미리 정의 된 패턴을 식별 하는 단일 표준 형식 지정자로 구성 됩니다.The patterns in the formats parameter consist of one or more custom format specifiers from the Custom Date and Time Format Strings table, or a single standard format specifier, which identifies a predefined pattern, from the Standard Date and Time Format Strings table.

사용자 지정 형식 패턴에서 날짜 또는 시간 구분 기호를 사용 하지 않는 경우 매개 변수에 대 한 고정 문화권과 provider 각 사용자 지정 형식 지정자의 가장 넓은 형식을 사용 합니다.If you do not use date or time separators in a custom format pattern, use the invariant culture for the provider parameter and the widest form of each custom format specifier. 예를 들어 패턴에서 시간을 지정 하려는 경우 좁은 형식 ("H") 대신 보다 넓은 형식의 "HH"를 지정 합니다.For example, if you want to specify hours in the pattern, specify the wider form, "HH", instead of the narrower form, "H".

에서 사용 되는 특정 날짜 및 시간 기호 및 문자열 (예: 특정 언어의 요일 이름)은 s 매개 변수에 의해 정의 됩니다 provider s format .가 표준 형식 지정자 문자열인 경우의 정확한 형식입니다.The particular date and time symbols and strings (such as the names of the days of the week in a particular language) used in s are defined by the provider parameter, as is the precise format of s if format is a standard format specifier string. provider매개 변수는 다음 중 하나일 수 있습니다.The provider parameter can be any of the following:

provider가 이면 null CultureInfo 현재 문화권에 해당 하는 개체가 사용 됩니다.If provider is null, the CultureInfo object that corresponds to the current culture is used.

styles매개 변수에는 DateTimeStyles 에 의해 정의 되지 않은 공백이 format 표시 될 수 있는지 여부와 s 구문 분석 작업의 정확한 동작을 제어 하는 열거형의 멤버가 하나 이상 포함 되어 있습니다.The styles parameter includes one or more members of the DateTimeStyles enumeration that determine whether and where white space not defined by format can appear in s and that control the precise behavior of the parse operation. 다음 표에서는 열거형의 각 멤버가 DateTimeStyles 메서드의 작업에 영향을 주는 방법에 대해 설명 합니다 TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime) .The following table describes how each member of the DateTimeStyles enumeration affects the operation of the TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime) method.

DateTimeStyles 멤버DateTimeStyles member 설명Description
AdjustToUniversal 는를 구문 분석 s 하 고 필요한 경우 UTC로 변환 합니다.Parses s and, if necessary, converts it to UTC. s 표준 시간대 오프셋이 포함 되어 있거나 s 에 표준 시간대 정보가 포함 되어 있지 않지만 styles 플래그가 포함 된 경우 DateTimeStyles.AssumeLocal 메서드는 문자열을 구문 분석 하 ToUniversalTime 고,를 호출 하 여 반환 된 DateTime 값을 UTC로 변환 하 고, 속성을로 설정 합니다 Kind DateTimeKind.Utc .If s includes a time zone offset, or if s contains no time zone information but styles includes the DateTimeStyles.AssumeLocal flag, the method parses the string, calls ToUniversalTime to convert the returned DateTime value to UTC, and sets the Kind property to DateTimeKind.Utc. s가 UTC를 나타내는지 또는 s 에 표준 시간대 정보가 포함 되어 있지 않지만 플래그를 포함 하는 경우 styles DateTimeStyles.AssumeUniversal 메서드는 문자열을 구문 분석 하 고 반환 된 값에 대해 표준 시간대 변환을 수행 하 DateTime 고 속성을로 설정 합니다 Kind DateTimeKind.Utc .If s indicates that it represents UTC, or if s does not contain time zone information but styles includes the DateTimeStyles.AssumeUniversal flag, the method parses the string, performs no time zone conversion on the returned DateTime value, and sets the Kind property to DateTimeKind.Utc. 다른 모든 경우에는 플래그가 적용 되지 않습니다.In all other cases, the flag has no effect.
AllowInnerWhite 에서 정의 하지 않은 공백이 format 개별 날짜 또는 시간 요소 사이에 나타날 수 있도록 지정 합니다.Specifies that white space not defined by format can appear between any individual date or time element.
AllowLeadingWhite 에서 정의 하지 않은 공백이 format 의 시작 부분에 나타날 수 있도록 지정 합니다 s .Specifies that white space not defined by format can appear at the beginning of s.
AllowTrailingWhite 에서 정의 하지 않은 공백이 format 끝에 나타날 수 있도록 지정 합니다 s .Specifies that white space not defined by format can appear at the end of s.
AllowWhiteSpaces s에서 정의 하지 않은 선행, 내부 및 후행 공백을 포함할 수 있도록 지정 합니다 format .Specifies that s may contain leading, inner, and trailing white spaces not defined by format.
AssumeLocal s에 표준 시간대 정보가 부족 한 경우 현지 시간을 나타내는 것으로 간주 하도록 지정 합니다.Specifies that if s lacks any time zone information, it is assumed to represent a local time. 플래그가 없으면 DateTimeStyles.AdjustToUniversal Kind 반환 된 값의 속성이 DateTime 로 설정 됩니다 DateTimeKind.Local .Unless the DateTimeStyles.AdjustToUniversal flag is present, the Kind property of the returned DateTime value is set to DateTimeKind.Local.
AssumeUniversal s에 표준 시간대 정보가 부족 한 경우 UTC를 나타내는 것으로 간주 하도록 지정 합니다.Specifies that if s lacks any time zone information, it is assumed to represent UTC. 플래그가 없으면 DateTimeStyles.AdjustToUniversal 메서드는 반환 된 DateTime 값을 UTC에서 현지 시간으로 변환 하 고 해당 Kind 속성을로 설정 DateTimeKind.Local 합니다.Unless the DateTimeStyles.AdjustToUniversal flag is present, the method converts the returned DateTime value from UTC to local time and sets its Kind property to DateTimeKind.Local.
NoCurrentDateDefault s 날짜 정보가 없는 시간이 포함 된 경우 반환 값의 날짜는로 설정 됩니다 DateTime.MinValue.Date .If s contains time without date information, the date of the return value is set to DateTime.MinValue.Date.
None s매개 변수는 기본값을 사용 하 여 구문 분석 됩니다.The s parameter is parsed using default values. 에 있는 공백을 제외한 공백은 허용 되지 않습니다 format .No white space other than that present in format is allowed. s 날짜 구성 요소가 없는 경우 반환 된 값의 날짜는 DateTime 1/1/0001로 설정 됩니다.If s lacks a date component, the date of the returned DateTime value is set to 1/1/0001. s 표준 시간대 정보가 없는 경우 Kind 반환 되는 개체의 속성은 DateTime 로 설정 됩니다 DateTimeKind.Unspecified .If s contains no time zone information, the Kind property of the returned DateTime object is set to DateTimeKind.Unspecified. 에 표준 시간대 정보가 있는 경우 s 시간은 현지 시간으로 변환 되 고 Kind 반환 된 개체의 속성은 DateTime 로 설정 됩니다 DateTimeKind.Local .If time zone information is present in s, the time is converted to local time and the Kind property of the returned DateTime object is set to DateTimeKind.Local.
RoundtripKind 표준 시간대 정보를 포함 하는 문자열의 경우는 DateTime 속성이로 설정 된 값으로의 변환을 방지 하려고 시도 합니다 Kind DateTimeKind.Local .For strings that contain time zone information, tries to prevent the conversion to a DateTime value with its Kind property set to DateTimeKind.Local. 이 플래그는 주로 UTC 시간을 현지 시간으로 변환 하는 것을 방지 합니다.This flag primarily prevents the conversion of UTC times to local times.

호출자 참고

.NET Framework 4에서 TryParseExact 메서드는 false 구문 분석할 문자열에 시간 구성 요소와 계약에 없는 AM/PM 지정자를 포함 하는 경우를 반환 합니다.In the .NET Framework 4, the TryParseExact method returns false if the string to be parsed contains an hour component and an AM/PM designator that are not in agreement. .NET Framework 3.5 이전 버전에서 AM/PM 지정자는 무시 됩니다.In the .NET Framework 3.5 and earlier versions, the AM/PM designator is ignored.

추가 정보

적용 대상