TimeSpan.TryParseExact TimeSpan.TryParseExact TimeSpan.TryParseExact TimeSpan.TryParseExact Method

定義

時間間隔の文字列形式を等価の TimeSpan に変換し、変換に成功したかどうかを示す値を返します。Converts the string representation of a time interval to its TimeSpan equivalent, and returns a value that indicates whether the conversion succeeded. 文字列形式の書式は、指定した書式と完全に一致する必要があります。The format of the string representation must match a specified format exactly.

オーバーロード

TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan)

指定した書式、カルチャ固有の書式情報、およびスタイルを使用して、時間間隔の文字列形式を等価の TimeSpan に変換し、変換に成功したかどうかを示す値を返します。Converts the string representation of a time interval to its TimeSpan equivalent by using the specified format, culture-specific format information, and styles, and returns a value that indicates whether the conversion succeeded. 文字列形式の書式は、指定した書式と完全に一致する必要があります。The format of the string representation must match the specified format exactly.

TryParseExact(ReadOnlySpan<Char>, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, String[], IFormatProvider, TimeSpanStyles, TimeSpan)
TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpanStyles, TimeSpan)
TryParseExact(String, String[], IFormatProvider, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpan)

指定した書式とカルチャ固有の書式情報を使用して、指定した文字列形式の時間間隔を等価の TimeSpan に変換し、変換に成功したかどうかを示す値を返します。Converts the specified string representation of a time interval to its TimeSpan equivalent by using the specified formats and culture-specific format information, and returns a value that indicates whether the conversion succeeded. 文字列形式の書式は、指定されたいずれかの書式と完全に一致する必要があります。The format of the string representation must match one of the specified formats exactly.

TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan)

指定した書式、カルチャ固有の書式情報、およびスタイルを使用して、指定した文字列形式の時間間隔を等価の TimeSpan に変換し、変換に成功したかどうかを示す値を返します。Converts the specified string representation of a time interval to its TimeSpan equivalent by using the specified formats, culture-specific format information, and styles, and returns a value that indicates whether the conversion succeeded. 文字列形式の書式は、指定されたいずれかの書式と完全に一致する必要があります。The format of the string representation must match one of the specified formats exactly.

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

指定した書式とカルチャ固有の書式情報を使用して、時間間隔の文字列形式を等価の TimeSpan に変換し、変換に成功したかどうかを示す値を返します。Converts the string representation of a time interval to its TimeSpan equivalent by using the specified format and culture-specific format information, and returns a value that indicates whether the conversion succeeded. 文字列形式の書式は、指定した書式と完全に一致する必要があります。The format of the string representation must match the specified format exactly.

TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan)

指定した書式、カルチャ固有の書式情報、およびスタイルを使用して、時間間隔の文字列形式を等価の TimeSpan に変換し、変換に成功したかどうかを示す値を返します。Converts the string representation of a time interval to its TimeSpan equivalent by using the specified format, culture-specific format information, and styles, and returns a value that indicates whether the conversion succeeded. 文字列形式の書式は、指定した書式と完全に一致する必要があります。The format of the string representation must match the specified format exactly.

public:
 static bool TryParseExact(System::String ^ input, System::String ^ format, IFormatProvider ^ formatProvider, System::Globalization::TimeSpanStyles styles, [Runtime::InteropServices::Out] TimeSpan % result);
public static bool TryParseExact (string input, string format, IFormatProvider formatProvider, System.Globalization.TimeSpanStyles styles, out TimeSpan result);
static member TryParseExact : string * string * IFormatProvider * System.Globalization.TimeSpanStyles *  -> bool
Public Shared Function TryParseExact (input As String, format As String, formatProvider As IFormatProvider, styles As TimeSpanStyles, ByRef result As TimeSpan) As Boolean

パラメーター

input
String String String String

変換する時間間隔を指定する文字列。A string that specifies the time interval to convert.

format
String String String String

input で必要とされる書式を定義する標準またはカスタムの書式指定文字列。A standard or custom format string that defines the required format of input.

formatProvider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

カルチャ固有の書式情報を提供するオブジェクト。An object that provides culture-specific formatting information.

styles
TimeSpanStyles TimeSpanStyles TimeSpanStyles TimeSpanStyles

input のスタイルを示す 1 つ以上の列挙値。One or more enumeration values that indicate the style of input.

result
TimeSpan TimeSpan TimeSpan TimeSpan

このメソッドが返されるときに、input で指定した時間間隔を表すオブジェクトを格納します。変換に失敗した場合は、Zero を格納します。When this method returns, contains an object that represents the time interval specified by input, or Zero if the conversion failed. このパラメーターは初期化せずに渡されます。This parameter is passed uninitialized.

戻り値

true が正常に変換された場合は input。それ以外の場合は falsetrue if input was converted successfully; otherwise, false.

次の例では、ParseExact(String, String, IFormatProvider)さまざまな書式指定文字列とカルチャを使用して時間間隔のいくつかの文字列表現を解析します。The following example uses the ParseExact(String, String, IFormatProvider) method to parse several string representations of time intervals using various format strings and cultures. また、使用、TimeSpanStyles.AssumeNegative負の時間間隔として各文字列を解釈する値。It also uses the TimeSpanStyles.AssumeNegative value to interpret each string as a negative time interval. 例の出力を示しているTimeSpanStyles.AssumeNegativeスタイルは、カスタム書式指定文字列と共に使用する場合にのみ、戻り値を適用します。The output from the example illustrates that the TimeSpanStyles.AssumeNegative style affects the return value only when it is used with custom format strings.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string intervalString, format;
      TimeSpan interval;
      CultureInfo culture = null;
      
      // Parse hour:minute value with custom format specifier.
      intervalString = "17:14";
      format = "h\\:mm";
      culture = CultureInfo.CurrentCulture;
      if (TimeSpan.TryParseExact(intervalString, format, 
                                 culture, TimeSpanStyles.AssumeNegative, out interval))
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval);
      else   
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format);
      
      // Parse hour:minute:second value with "g" specifier.
      intervalString = "17:14:48";
      format = "g";
      culture = CultureInfo.InvariantCulture;
      if (TimeSpan.TryParseExact(intervalString, format, 
                                 culture, TimeSpanStyles.AssumeNegative, out interval))
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval);
      else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format);
      
      // Parse hours:minute.second value with custom format specifier.     
      intervalString = "17:14:48.153";
      format = @"h\:mm\:ss\.fff";
      culture = null;
      if (TimeSpan.TryParseExact(intervalString, format, 
                                 culture, TimeSpanStyles.AssumeNegative, out interval))
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval);
      else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format);   

      // Parse days:hours:minute.second value with "G" specifier 
      // and current (en-US) culture.     
      intervalString = "3:17:14:48.153";
      format = "G";
      culture = CultureInfo.CurrentCulture;
      if (TimeSpan.TryParseExact(intervalString, format, 
                                 culture, TimeSpanStyles.AssumeNegative, out interval))
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval);
      else   
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format);   
            
      // Parse days:hours:minute.second value with a custom format specifier.     
      intervalString = "3:17:14:48.153";
      format = @"d\:hh\:mm\:ss\.fff";
      culture = null;
      if (TimeSpan.TryParseExact(intervalString, format, 
                                 culture, TimeSpanStyles.AssumeNegative, out interval))
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval);
      else   
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format);
      
      // Parse days:hours:minute.second value with "G" specifier 
      // and fr-FR culture.     
      intervalString = "3:17:14:48,153";
      format = "G";
      culture = new CultureInfo("fr-FR");
      if (TimeSpan.TryParseExact(intervalString, format, 
                                 culture, TimeSpanStyles.AssumeNegative, out interval))
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval);
      else   
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format);

      // Parse a single number using the "c" standard format string. 
      intervalString = "12";
      format = "c";
      if (TimeSpan.TryParseExact(intervalString, format, 
                                 null, TimeSpanStyles.AssumeNegative, out interval))
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval);
      else   
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format);
      
      // Parse a single number using the "%h" custom format string. 
      format = "%h";
      if (TimeSpan.TryParseExact(intervalString, format, 
                                 null, TimeSpanStyles.AssumeNegative, out interval))
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval);
      else   
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format);
      
      // Parse a single number using the "%s" custom format string. 
      format = "%s";
      if (TimeSpan.TryParseExact(intervalString, format, 
                                 null, TimeSpanStyles.AssumeNegative, out interval))
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval);
      else   
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format);
   }
}
// The example displays the following output:
//    '17:14' (h\:mm) --> -17:14:00
//    '17:14:48' (g) --> 17:14:48
//    '17:14:48.153' (h\:mm\:ss\.fff) --> -17:14:48.1530000
//    '3:17:14:48.153' (G) --> 3.17:14:48.1530000
//    '3:17:14:48.153' (d\:hh\:mm\:ss\.fff) --> -3.17:14:48.1530000
//    '3:17:14:48,153' (G) --> 3.17:14:48.1530000
//    '12' (c) --> 12.00:00:00
//    '12' (%h) --> -12:00:00
//    '12' (%s) --> -00:00:12
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim intervalString, format As String
      Dim interval As TimeSpan
      Dim culture As CultureInfo = Nothing
      
      ' Parse hour:minute value with custom format specifier.
      intervalString = "17:14"
      format = "h\:mm"
      culture = CultureInfo.CurrentCulture
      If TimeSpan.TryParseExact(intervalString, format, 
                                culture, TimeSpanStyles.AssumeNegative, interval) Then
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval)
      Else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format)   
      End If
      
      ' Parse hour:minute:second value with "g" specifier.
      intervalString = "17:14:48"
      format = "g"
      culture = CultureInfo.InvariantCulture
      If TimeSpan.TryParseExact(intervalString, format, 
                                culture, TimeSpanStyles.AssumeNegative, interval) Then
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval)
      Else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format)   
      End If
      
      ' Parse hours:minute.second value with custom format specifier.     
      intervalString = "17:14:48.153"
      format = "h\:mm\:ss\.fff"
      culture = Nothing
      If TimeSpan.TryParseExact(intervalString, format, 
                                culture, TimeSpanStyles.AssumeNegative, interval) Then
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval)
      Else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format)   
      End If 

      ' Parse days:hours:minute.second value with "G" specifier 
      ' and current (en-US) culture.     
      intervalString = "3:17:14:48.153"
      format = "G"
      culture = CultureInfo.CurrentCulture
      If TimeSpan.TryParseExact(intervalString, format, 
                                culture, TimeSpanStyles.AssumeNegative, interval) Then
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval)
      Else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format)   
      End If 
            
      ' Parse days:hours:minute.second value with a custom format specifier.     
      intervalString = "3:17:14:48.153"
      format = "d\:hh\:mm\:ss\.fff"
      culture = Nothing
      If TimeSpan.TryParseExact(intervalString, format, 
                                culture, TimeSpanStyles.AssumeNegative, interval) Then
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval)
      Else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format)   
      End If 
      
      ' Parse days:hours:minute.second value with "G" specifier 
      ' and fr-FR culture.     
      intervalString = "3:17:14:48,153"
      format = "G"
      culture = New CultureInfo("fr-FR")
      If TimeSpan.TryParseExact(intervalString, format, 
                                culture, TimeSpanStyles.AssumeNegative, interval) Then
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval)
      Else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format)
      End If 

      ' Parse a single number using the "c" standard format string. 
      intervalString = "12"
      format = "c"
      If TimeSpan.TryParseExact(intervalString, format, 
                                Nothing, TimeSpanStyles.AssumeNegative, interval) Then
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval)
      Else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format)   
      End If 
      
      ' Parse a single number using the "%h" custom format string. 
      format = "%h"
      If TimeSpan.TryParseExact(intervalString, format, 
                                Nothing, TimeSpanStyles.AssumeNegative, interval) Then
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval)
      Else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format)   
      End If 
      
      ' Parse a single number using the "%s" custom format string. 
      format = "%s"
      If TimeSpan.TryParseExact(intervalString, format, 
                                Nothing, TimeSpanStyles.AssumeNegative, interval) Then
         Console.WriteLine("'{0}' ({1}) --> {2}", intervalString, format, interval)
      Else
         Console.WriteLine("Unable to parse '{0}' using format {1}",
                           intervalString, format)   
      End If 
   End Sub
End Module
' The example displays the following output:
'    '17:14' (h\:mm) --> -17:14:00
'    '17:14:48' (g) --> 17:14:48
'    '17:14:48.153' (h\:mm\:ss\.fff) --> -17:14:48.1530000
'    '3:17:14:48.153' (G) --> 3.17:14:48.1530000
'    '3:17:14:48.153' (d\:hh\:mm\:ss\.fff) --> -3.17:14:48.1530000
'    '3:17:14:48,153' (G) --> 3.17:14:48.1530000
'    '12' (c) --> 12.00:00:00
'    '12' (%h) --> -12:00:00
'    '12' (%s) --> -00:00:12

注釈

TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan)メソッドで定義された書式である必要があります時間間隔の文字列表現を解析し、formatパラメーター、その先頭および末尾の空白文字が無視される点が異なります。The TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan) method parses the string representation of a time interval, which must be in the format defined by the format parameter, except that leading and trailing white-space characters are ignored. このメソッドは、ParseExact(String, String, IFormatProvider, TimeSpanStyles)メソッド、点を除いて、変換が失敗した場合、その it が例外をスローしません。This method is similar to the ParseExact(String, String, IFormatProvider, TimeSpanStyles) method, except that it does not throw an exception if the conversion fails.

formatパラメーターは、1 つの標準書式指定子、または必要な書式を定義する 1 つまたは複数のカスタム書式指定子を含む文字列inputします。The format parameter is a string that contains either a single standard format specifier, or one or more custom format specifiers that define the required format of input. 有効な書式指定文字列についての詳細については、次を参照してください。標準 TimeSpan 書式指定文字列カスタム TimeSpan 書式指定文字列します。For more information about valid format strings, see Standard TimeSpan Format Strings and Custom TimeSpan Format Strings.

formatProviderパラメーターは、IFormatProvider場合、返される文字列の書式設定に関するカルチャに固有の情報を提供する実装formatは標準書式指定文字列。The formatProvider parameter is an IFormatProvider implementation that provides culture-specific information about the format of the returned string if format is a standard format string. formatProviderパラメーターには、次のいずれかを指定できます。The formatProvider parameter can be any of the following:

場合formatProvidernullDateTimeFormatInfo現在のカルチャに関連付けられているオブジェクトを使用します。If formatProvider is null, the DateTimeFormatInfo object that is associated with the current culture is used.

stylesパラメーターはカスタム書式指定文字列を使用して解析される文字列の解釈に影響します。The styles parameter affects the interpretation of strings parsed using custom format strings. 判断したかどうかinputは、負の符号が存在する場合にのみ負の時間間隔として解釈されます (TimeSpanStyles.None)、常に負の時間間隔として解釈ことか、または (TimeSpanStyles.AssumeNegative)。It determines whether input is interpreted as a negative time interval only if a negative sign is present (TimeSpanStyles.None), or whether it is always interpreted as a negative time interval (TimeSpanStyles.AssumeNegative). 場合TimeSpanStyles.AssumeNegativeが使用されていないformatリテラル負の記号を含める必要があります (など"\-") を正常に負の時間間隔を解析します。If TimeSpanStyles.AssumeNegative is not used, format must include a literal negative sign symbol (such as "\-") to successfully parse a negative time interval.

こちらもご覧ください

TryParseExact(ReadOnlySpan<Char>, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, String[], IFormatProvider, TimeSpanStyles, TimeSpan)

public:
 static bool TryParseExact(ReadOnlySpan<char> input, cli::array <System::String ^> ^ formats, IFormatProvider ^ formatProvider, System::Globalization::TimeSpanStyles styles, [Runtime::InteropServices::Out] TimeSpan % result);
public static bool TryParseExact (ReadOnlySpan<char> input, string[] formats, IFormatProvider formatProvider, System.Globalization.TimeSpanStyles styles, out TimeSpan result);
static member TryParseExact : ReadOnlySpan<char> * string[] * IFormatProvider * System.Globalization.TimeSpanStyles *  -> bool
Public Shared Function TryParseExact (input As ReadOnlySpan(Of Char), formats As String(), formatProvider As IFormatProvider, styles As TimeSpanStyles, ByRef result As TimeSpan) As Boolean

パラメーター

formats
String[]

戻り値

TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpanStyles, TimeSpan)

public:
 static bool TryParseExact(ReadOnlySpan<char> input, ReadOnlySpan<char> format, IFormatProvider ^ formatProvider, System::Globalization::TimeSpanStyles styles, [Runtime::InteropServices::Out] TimeSpan % result);
public static bool TryParseExact (ReadOnlySpan<char> input, ReadOnlySpan<char> format, IFormatProvider formatProvider, System.Globalization.TimeSpanStyles styles, out TimeSpan result);
static member TryParseExact : ReadOnlySpan<char> * ReadOnlySpan<char> * IFormatProvider * System.Globalization.TimeSpanStyles *  -> bool
Public Shared Function TryParseExact (input As ReadOnlySpan(Of Char), format As ReadOnlySpan(Of Char), formatProvider As IFormatProvider, styles As TimeSpanStyles, ByRef result As TimeSpan) As Boolean

パラメーター

format
ReadOnlySpan<Char>

戻り値

TryParseExact(String, String[], IFormatProvider, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpan)

指定した書式とカルチャ固有の書式情報を使用して、指定した文字列形式の時間間隔を等価の TimeSpan に変換し、変換に成功したかどうかを示す値を返します。Converts the specified string representation of a time interval to its TimeSpan equivalent by using the specified formats and culture-specific format information, and returns a value that indicates whether the conversion succeeded. 文字列形式の書式は、指定されたいずれかの書式と完全に一致する必要があります。The format of the string representation must match one of the specified formats exactly.

public:
 static bool TryParseExact(System::String ^ input, cli::array <System::String ^> ^ formats, IFormatProvider ^ formatProvider, [Runtime::InteropServices::Out] TimeSpan % result);
public static bool TryParseExact (string input, string[] formats, IFormatProvider formatProvider, out TimeSpan result);
static member TryParseExact : string * string[] * IFormatProvider *  -> bool
Public Shared Function TryParseExact (input As String, formats As String(), formatProvider As IFormatProvider, ByRef result As TimeSpan) As Boolean

パラメーター

input
String String String String

変換する時間間隔を指定する文字列。A string that specifies the time interval to convert.

formats
String[]

input に許容される書式を定義する標準またはカスタムの書式指定文字列の配列。A array of standard or custom format strings that define the acceptable formats of input.

formatProvider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

カルチャ固有の書式情報を提供するオブジェクト。An object that provides culture-specific formatting information.

result
TimeSpan TimeSpan TimeSpan TimeSpan

このメソッドが返されるときに、input で指定した時間間隔を表すオブジェクトを格納します。変換に失敗した場合は、Zero を格納します。When this method returns, contains an object that represents the time interval specified by input, or Zero if the conversion failed. このパラメーターは初期化せずに渡されます。This parameter is passed uninitialized.

戻り値

true が正常に変換された場合は input。それ以外の場合は falsetrue if input was converted successfully; otherwise, false.

次の例では、TryParseExact(String, String[], IFormatProvider, TimeSpan)への文字列配列の各要素に変換するメソッド、TimeSpan値。The following example calls the TryParseExact(String, String[], IFormatProvider, TimeSpan) method to convert each element of a string array to a TimeSpan value. 例では、フランス語 - フランス ("FR-FR") カルチャの書式設定規則を使用して、文字列を解釈します。The example interprets the strings by using the formatting conventions of the French - France ("fr-FR") culture. 文字列は、一般の短い形式または一般の長い形式のいずれかで、時間間隔を表すことができます。The strings can represent a time interval in either the general short format or the general long format.

さらに、時間間隔の解析メソッドが 1 桁の数字を解釈する方法を変更します。In addition, the example changes the way in which the time interval parsing methods interpret a single digit. 通常、1 桁の数字は、時間間隔の日数として解釈されます。Ordinarily, a single digit is interpreted as the number of days in a time interval. 代わりに、%hカスタム書式指定文字列は 1 桁の数字を時間数として解釈するために使用します。Instead, the %h custom format string is used to interpret a single digit as the number of hours. この変更を有効にするには、ことに注意して、%hカスタム書式指定文字列でその他の書式指定文字列を付ける必要があります、formats配列。For this change to be effective, note that the %h custom format string must precede the other format strings in the formats array.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] inputs = { "3", "16:42", "1:6:52:35.0625", 
                          "1:6:52:35,0625" }; 
      string[] formats = { "g", "G", "%h"};
      TimeSpan interval;
      CultureInfo culture = new CultureInfo("fr-FR");
      
      // Parse each string in inputs using formats and the fr-FR culture.
      foreach (string input in inputs) {
         if(TimeSpan.TryParseExact(input, formats, culture, out interval))
            Console.WriteLine("{0} --> {1:c}", input, interval);
         else
            Console.WriteLine("Unable to parse {0}", input);   
      }
   }
}
// The example displays the following output:
//       3 --> 03:00:00
//       16:42 --> 16:42:00
//       Unable to parse 1:6:52:35.0625
//       1:6:52:35,0625 --> 1.06:52:35.0625000
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim inputs() As String = { "3", "16:42", "1:6:52:35.0625", 
                                 "1:6:52:35,0625" } 
      Dim formats() As String = { "%h", "g", "G" }
      Dim interval As TimeSpan
      Dim culture As New CultureInfo("fr-FR")
      
      ' Parse each string in inputs using formats and the fr-FR culture.
      For Each input As String In inputs
         If TimeSpan.TryParseExact(input, formats, culture, interval) Then
            Console.WriteLine("{0} --> {1:c}", input, interval)   
         Else
            Console.WriteLine("Unable to parse {0}", input)   
         End If            
      Next
   End Sub
End Module
' The example displays the following output:
'       3 --> 03:00:00
'       16:42 --> 16:42:00
'       Unable to parse 1:6:52:35.0625
'       1:6:52:35,0625 --> 1.06:52:35.0625000

注釈

TryParseExact(String, String[], IFormatProvider, TimeSpan)メソッドで指定された書式指定文字列のいずれかで定義された書式である必要があります時間間隔の文字列表現を解析し、formatsパラメーター、その先頭および末尾の空白文字が無視される点が異なります。The TryParseExact(String, String[], IFormatProvider, TimeSpan) method parses the string representation of a time interval, which must be in the format defined by one of the format strings specified by the formats parameter, except that leading and trailing white-space characters are ignored. このメソッドは、ParseExact(String, String[], IFormatProvider)メソッド、点を除いて、変換が失敗した場合、その it が例外をスローしません。This method is similar to the ParseExact(String, String[], IFormatProvider) method, except that it does not throw an exception if the conversion fails.

formatsパラメーターは文字列配列で 1 つの標準書式指定子、または必要な書式を定義する 1 つまたは複数のカスタム書式指定子のいずれかの要素で構成されますinputします。The formats parameter is a string array whose elements consist of either a single standard format specifier, or one or more custom format specifiers that define the required format of input. 有効な書式指定文字列についての詳細については、次を参照してください。標準 TimeSpan 書式指定文字列カスタム TimeSpan 書式指定文字列します。For more information about valid format strings, see Standard TimeSpan Format Strings and Custom TimeSpan Format Strings. input メンバーと正確に一致する必要がありますformats解析操作を完了します。input must correspond exactly to a member of formats for the parse operation to succeed. 解析操作が、照合しようとしています。input内の各要素にformats以降では、配列の最初の要素。The parse operation attempts to match input to each element in formats starting with the first element in the array.

重要

TryParseExactメソッドで指定されたカルチャの規則を使用する、formatProviderパラメーター書式指定文字列を解析するために使用する場合にのみinput標準TimeSpan値の"g"または"G"のいずれかの文字列の書式を設定します。The TryParseExact method uses the conventions of the culture specified by the formatProvider parameter only if the format string used to parse input is a standard TimeSpan format string whose value is either "g" or "G". "C"、"t"および"T"標準書式指定文字列は、インバリアント カルチャの書式指定規則を使用します。The "c", "t", and "T" standard format strings use the formatting conventions of the invariant culture. カスタム書式指定文字列は、入力文字列の正確な形式を定義し、リテラル文字を使用して時間間隔のコンポーネントを分離します。Custom format strings define the precise format of the input string and use literal characters to separate the components of a time interval.

formatProviderパラメーターは、IFormatProvider書式指定文字列を解析するために使用する場合に返される文字列の書式設定に関するカルチャに固有の情報を提供する実装inputは標準書式指定文字列です。The formatProvider parameter is an IFormatProvider implementation that provides culture-specific information about the format of the returned string if the format string used to parse input is a standard format string. formatProviderパラメーターには、次のいずれかを指定できます。The formatProvider parameter can be any of the following:

場合formatProvidernullDateTimeFormatInfo現在のカルチャに関連付けられているオブジェクトを使用します。If formatProvider is null, the DateTimeFormatInfo object that is associated with the current culture is used.

こちらもご覧ください

TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan) TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan)

指定した書式、カルチャ固有の書式情報、およびスタイルを使用して、指定した文字列形式の時間間隔を等価の TimeSpan に変換し、変換に成功したかどうかを示す値を返します。Converts the specified string representation of a time interval to its TimeSpan equivalent by using the specified formats, culture-specific format information, and styles, and returns a value that indicates whether the conversion succeeded. 文字列形式の書式は、指定されたいずれかの書式と完全に一致する必要があります。The format of the string representation must match one of the specified formats exactly.

public:
 static bool TryParseExact(System::String ^ input, cli::array <System::String ^> ^ formats, IFormatProvider ^ formatProvider, System::Globalization::TimeSpanStyles styles, [Runtime::InteropServices::Out] TimeSpan % result);
public static bool TryParseExact (string input, string[] formats, IFormatProvider formatProvider, System.Globalization.TimeSpanStyles styles, out TimeSpan result);
static member TryParseExact : string * string[] * IFormatProvider * System.Globalization.TimeSpanStyles *  -> bool
Public Shared Function TryParseExact (input As String, formats As String(), formatProvider As IFormatProvider, styles As TimeSpanStyles, ByRef result As TimeSpan) As Boolean

パラメーター

input
String String String String

変換する時間間隔を指定する文字列。A string that specifies the time interval to convert.

formats
String[]

input に許容される書式を定義する標準またはカスタムの書式指定文字列の配列。A array of standard or custom format strings that define the acceptable formats of input.

formatProvider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

カルチャ固有の書式情報を提供するオブジェクト。An object that supplies culture-specific formatting information.

styles
TimeSpanStyles TimeSpanStyles TimeSpanStyles TimeSpanStyles

input のスタイルを示す 1 つ以上の列挙値。One or more enumeration values that indicate the style of input.

result
TimeSpan TimeSpan TimeSpan TimeSpan

このメソッドが返されるときに、input で指定した時間間隔を表すオブジェクトを格納します。変換に失敗した場合は、Zero を格納します。When this method returns, contains an object that represents the time interval specified by input, or Zero if the conversion failed. このパラメーターは初期化せずに渡されます。This parameter is passed uninitialized.

戻り値

true が正常に変換された場合は input。それ以外の場合は falsetrue if input was converted successfully; otherwise, false.

次の例では、TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan)への文字列配列の各要素に変換するメソッド、TimeSpan値。The following example calls the TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan) method to convert each element of a string array to a TimeSpan value. 文字列は、一般の短い形式または一般の長い形式のいずれかで、時間間隔を表すことができます。The strings can represent a time interval in either the general short format or the general long format.

さらに、時間間隔の解析メソッドが 1 桁の数字を解釈する方法を変更します。In addition, the example changes the way in which the time interval parsing methods interpret a single digit. 通常、1 桁の数字は、時間間隔の日数として解釈されます。Ordinarily, a single digit is interpreted as the number of days in a time interval. 代わりに、%hカスタム書式指定文字列は 1 桁の数字を時間数として解釈するために使用します。Instead, the %h custom format string is used to interpret a single digit as the number of hours. この変更を有効にするには、ことに注意して、%hカスタム書式指定文字列でその他の書式指定文字列を付ける必要があります、formats配列。For this change to be effective, note that the %h custom format string must precede the other format strings in the formats array. 出力からも注意してくださいをTimeSpanStyles.AssumeNegativeメソッドの呼び出しで指定されたフラグは、この書式指定子で文字列を解析する場合にのみ使用します。Also note from the output that the TimeSpanStyles.AssumeNegative flag specified in the method call is used only when parsing a string with this format specifier.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] inputs = { "3", "16:42", "1:6:52:35.0625", 
                          "1:6:52:35,0625" }; 
      string[] formats = { "%h", "g", "G" };
      TimeSpan interval;
      CultureInfo culture = new CultureInfo("fr-FR");
      
      // Parse each string in inputs using formats and the fr-FR culture.
      foreach (string input in inputs) {
         if(TimeSpan.TryParseExact(input, formats, culture, 
                                   TimeSpanStyles.AssumeNegative, out interval))
            Console.WriteLine("{0} --> {1:c}", input, interval);
         else
            Console.WriteLine("Unable to parse {0}", input);   
      }
   }
}
// The example displays the following output:
//       3 --> -03:00:00
//       16:42 --> 16:42:00
//       Unable to parse 1:6:52:35.0625
//       1:6:52:35,0625 --> 1.06:52:35.0625000
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim inputs() As String = { "3", "16:42", "1:6:52:35.0625", 
                                 "1:6:52:35,0625" } 
      Dim formats() As String = { "%h", "g", "G" }
      Dim interval As TimeSpan
      Dim culture As New CultureInfo("de-DE")
      
      ' Parse each string in inputs using formats and the fr-FR culture.
      For Each input As String In inputs
         If TimeSpan.TryParseExact(input, formats, culture, 
                                   TimeSpanStyles.AssumeNegative, interval) Then
            Console.WriteLine("{0} --> {1:c}", input, interval)   
         Else
            Console.WriteLine("Unable to parse {0}", input)   
         End If            
      Next
   End Sub
End Module
' The example displays the following output:
'       3 --> -03:00:00
'       16:42 --> 16:42:00
'       Unable to parse 1:6:52:35.0625
'       1:6:52:35,0625 --> 1.06:52:35.0625000

注釈

TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan)メソッドで指定された書式指定文字列のいずれかで定義された書式である必要があります時間間隔の文字列表現を解析し、formatsパラメーター、その先頭および末尾の空白文字が無視される点が異なります。The TryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan) method parses the string representation of a time interval, which must be in the format defined by one of the format strings specified by the formats parameter, except that leading and trailing white-space characters are ignored. このメソッドは、ParseExact(String, String[], IFormatProvider, TimeSpanStyles)メソッド、点を除いて、変換が失敗した場合、その it が例外をスローしません。This method is similar to the ParseExact(String, String[], IFormatProvider, TimeSpanStyles) method, except that it does not throw an exception if the conversion fails.

formatsパラメーターは文字列配列で 1 つの標準書式指定子、または必要な書式を定義する 1 つまたは複数のカスタム書式指定子のいずれかの要素で構成されますinputします。The formats parameter is a string array whose elements consist of either a single standard format specifier, or one or more custom format specifiers that define the required format of input. 有効な書式指定文字列についての詳細については、次を参照してください。標準 TimeSpan 書式指定文字列カスタム TimeSpan 書式指定文字列します。For more information about valid format strings, see Standard TimeSpan Format Strings and Custom TimeSpan Format Strings. input メンバーと正確に一致する必要がありますformats解析操作を完了します。input must correspond exactly to a member of formats for the parse operation to succeed. 解析操作が、照合しようとしています。input内の各要素にformats以降では、配列の最初の要素。The parse operation attempts to match input to each element in formats starting with the first element in the array.

重要

ParseExactメソッドで指定されたカルチャの規則を使用する、formatProviderパラメーター書式指定文字列を解析するために使用する場合にのみinput標準TimeSpan値の"g"または"G"のいずれかの文字列の書式を設定します。The ParseExact method uses the conventions of the culture specified by the formatProvider parameter only if the format string used to parse input is a standard TimeSpan format string whose value is either "g" or "G". "C"、"t"および"T"標準書式指定文字列は、インバリアント カルチャの書式指定規則を使用します。The "c", "t", and "T" standard format strings use the formatting conventions of the invariant culture. カスタム書式指定文字列は、入力文字列の正確な形式を定義し、リテラル文字を使用して時間間隔のコンポーネントを分離します。Custom format strings define the precise format of the input string and use literal characters to separate the components of a time interval.

formatProviderパラメーターは、IFormatProvider書式指定文字列を解析するために使用する場合に返される文字列の書式設定に関するカルチャに固有の情報を提供する実装inputは標準書式指定文字列です。The formatProvider parameter is an IFormatProvider implementation that provides culture-specific information about the format of the returned string if the format string used to parse input is a standard format string. formatProviderパラメーターには、次のいずれかを指定できます。The formatProvider parameter can be any of the following:

場合formatProvidernullDateTimeFormatInfo現在のカルチャに関連付けられているオブジェクトを使用します。If formatProvider is null, the DateTimeFormatInfo object that is associated with the current culture is used.

stylesパラメーターはカスタム書式指定文字列を使用して解析される文字列の解釈に影響します。The styles parameter affects the interpretation of strings that are parsed using custom format strings. 判断したかどうかinputは、負の符号が存在する場合にのみ負の時間間隔として解釈されます (TimeSpanStyles.None)、常に負の時間間隔として解釈ことか、または (TimeSpanStyles.AssumeNegative)。It determines whether input is interpreted as a negative time interval only if a negative sign is present (TimeSpanStyles.None), or whether it is always interpreted as a negative time interval (TimeSpanStyles.AssumeNegative). 場合TimeSpanStyles.AssumeNegativeが使用されていないformatリテラル負の記号を含める必要があります (など"\-") を正常に負の時間間隔を解析します。If TimeSpanStyles.AssumeNegative is not used, format must include a literal negative sign symbol (such as "\-") to successfully parse a negative time interval.

こちらもご覧ください

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

public:
 static bool TryParseExact(ReadOnlySpan<char> input, cli::array <System::String ^> ^ formats, IFormatProvider ^ formatProvider, [Runtime::InteropServices::Out] TimeSpan % result);
public static bool TryParseExact (ReadOnlySpan<char> input, string[] formats, IFormatProvider formatProvider, out TimeSpan result);
static member TryParseExact : ReadOnlySpan<char> * string[] * IFormatProvider *  -> bool
Public Shared Function TryParseExact (input As ReadOnlySpan(Of Char), formats As String(), formatProvider As IFormatProvider, ByRef result As TimeSpan) As Boolean

パラメーター

formats
String[]

戻り値

TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpan) TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpan) TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpan) TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, IFormatProvider, TimeSpan)

public:
 static bool TryParseExact(ReadOnlySpan<char> input, ReadOnlySpan<char> format, IFormatProvider ^ formatProvider, [Runtime::InteropServices::Out] TimeSpan % result);
public static bool TryParseExact (ReadOnlySpan<char> input, ReadOnlySpan<char> format, IFormatProvider formatProvider, out TimeSpan result);
static member TryParseExact : ReadOnlySpan<char> * ReadOnlySpan<char> * IFormatProvider *  -> bool
Public Shared Function TryParseExact (input As ReadOnlySpan(Of Char), format As ReadOnlySpan(Of Char), formatProvider As IFormatProvider, ByRef result As TimeSpan) As Boolean

パラメーター

format
ReadOnlySpan<Char>

戻り値

TryParseExact(String, String, IFormatProvider, TimeSpan) TryParseExact(String, String, IFormatProvider, TimeSpan) TryParseExact(String, String, IFormatProvider, TimeSpan) TryParseExact(String, String, IFormatProvider, TimeSpan)

指定した書式とカルチャ固有の書式情報を使用して、時間間隔の文字列形式を等価の TimeSpan に変換し、変換に成功したかどうかを示す値を返します。Converts the string representation of a time interval to its TimeSpan equivalent by using the specified format and culture-specific format information, and returns a value that indicates whether the conversion succeeded. 文字列形式の書式は、指定した書式と完全に一致する必要があります。The format of the string representation must match the specified format exactly.

public:
 static bool TryParseExact(System::String ^ input, System::String ^ format, IFormatProvider ^ formatProvider, [Runtime::InteropServices::Out] TimeSpan % result);
public static bool TryParseExact (string input, string format, IFormatProvider formatProvider, out TimeSpan result);
static member TryParseExact : string * string * IFormatProvider *  -> bool
Public Shared Function TryParseExact (input As String, format As String, formatProvider As IFormatProvider, ByRef result As TimeSpan) As Boolean

パラメーター

input
String String String String

変換する時間間隔を指定する文字列。A string that specifies the time interval to convert.

format
String String String String

input で必要とされる書式を定義する標準またはカスタムの書式指定文字列。A standard or custom format string that defines the required format of input.

formatProvider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

カルチャ固有の書式情報を提供するオブジェクト。An object that supplies culture-specific formatting information.

result
TimeSpan TimeSpan TimeSpan TimeSpan

このメソッドが返されるときに、input で指定した時間間隔を表すオブジェクトを格納します。変換に失敗した場合は、Zero を格納します。When this method returns, contains an object that represents the time interval specified by input, or Zero if the conversion failed. このパラメーターは初期化せずに渡されます。This parameter is passed uninitialized.

戻り値

true が正常に変換された場合は input。それ以外の場合は falsetrue if input was converted successfully; otherwise, false.

次の例では、TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan)さまざまな書式指定文字列とカルチャを使用して時間間隔のいくつかの文字列表現を解析します。The following example uses the TryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan) method to parse several string representations of time intervals using various format strings and cultures.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string intervalString, format;
      TimeSpan interval;
      CultureInfo culture;
      
      // Parse hour:minute value with "g" specifier current culture.
      intervalString = "17:14";
      format = "g";
      culture = CultureInfo.CurrentCulture;
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);
      
      // Parse hour:minute:second value with "G" specifier.
      intervalString = "17:14:48";
      format = "G";
      culture = CultureInfo.InvariantCulture;
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);
      
      // Parse hours:minute.second value with "G" specifier 
      // and current (en-US) culture.     
      intervalString = "17:14:48.153";
      format = "G";
      culture = CultureInfo.CurrentCulture;
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);

      // Parse days:hours:minute.second value with "G" specifier 
      // and current (en-US) culture.     
      intervalString = "3:17:14:48.153";
      format = "G";
      culture = CultureInfo.CurrentCulture;
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);
            
      // Parse days:hours:minute.second value with "G" specifier 
      // and fr-FR culture.     
      intervalString = "3:17:14:48.153";
      format = "G";
      culture = new CultureInfo("fr-FR");
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);
      
      // Parse days:hours:minute.second value with "G" specifier 
      // and fr-FR culture.     
      intervalString = "3:17:14:48,153";
      format = "G";
      if (TimeSpan.TryParseExact(intervalString, format, culture, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);

      // Parse a single number using the "c" standard format string. 
      intervalString = "12";
      format = "c";
      if (TimeSpan.TryParseExact(intervalString, format, null, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);
      
      // Parse a single number using the "%h" custom format string. 
      format = "%h";
      if (TimeSpan.TryParseExact(intervalString, format, null, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);
      
      // Parse a single number using the "%s" custom format string. 
      format = "%s";
      if (TimeSpan.TryParseExact(intervalString, format, null, out interval))
         Console.WriteLine("'{0}' --> {1}", intervalString, interval);
      else
         Console.WriteLine("Unable to parse {0}", intervalString);
   }
}
// The example displays the following output:
//       '17:14' --> 17:14:00
//       Unable to parse 17:14:48
//       Unable to parse 17:14:48.153
//       '3:17:14:48.153' --> 3.17:14:48.1530000
//       Unable to parse 3:17:14:48.153
//       '3:17:14:48,153' --> 3.17:14:48.1530000
//       '12' --> 12.00:00:00
//       '12' --> 12:00:00
//       '12' --> 00:00:12
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim intervalString, format As String
      Dim interval As TimeSpan
      Dim culture As CultureInfo
      
      ' Parse hour:minute value with "g" specifier current culture.
      intervalString = "17:14"
      format = "g"
      culture = CultureInfo.CurrentCulture
      If TimeSpan.TryParseExact(intervalString, format, culture, interval) Then
         Console.WriteLine("'{0}' --> {1}", intervalString, interval)
      Else
         Console.WriteLine("Unable to parse {0}", intervalString)
      End If
      
      ' Parse hour:minute:second value with "G" specifier.
      intervalString = "17:14:48"
      format = "G"
      culture = CultureInfo.InvariantCulture
      If TimeSpan.TryParseExact(intervalString, format, culture, interval) Then
         Console.WriteLine("'{0}' --> {1}", intervalString, interval)
      Else
         Console.WriteLine("Unable to parse {0}", intervalString)
      End If

      ' Parse hours:minute.second value with "G" specifier 
      ' and current (en-US) culture.     
      intervalString = "17:14:48.153"
      format = "G"
      culture = CultureInfo.CurrentCulture
      If TimeSpan.TryParseExact(intervalString, format, culture, interval) Then
         Console.WriteLine("'{0}' --> {1}", intervalString, interval)
      Else
         Console.WriteLine("Unable to parse {0}", intervalString)
      End If

      ' Parse days:hours:minute.second value with "G" specifier 
      ' and current (en-US) culture.     
      intervalString = "3:17:14:48.153"
      format = "G"
      culture = CultureInfo.CurrentCulture
      If TimeSpan.TryParseExact(intervalString, format, culture, interval) Then
         Console.WriteLine("'{0}' --> {1}", intervalString, interval)
      Else
         Console.WriteLine("Unable to parse {0}", intervalString)
      End If
            
      ' Parse days:hours:minute.second value with "G" specifier 
      ' and fr-FR culture.     
      intervalString = "3:17:14:48.153"
      format = "G"
      culture = New CultureInfo("fr-FR")
      If TimeSpan.TryParseExact(intervalString, format, culture, interval) Then
         Console.WriteLine("'{0}' --> {1}", intervalString, interval)
      Else
         Console.WriteLine("Unable to parse {0}", intervalString)
      End If
      
      ' Parse days:hours:minute.second value with "G" specifier 
      ' and fr-FR culture.     
      intervalString = "3:17:14:48,153"
      format = "G"
      culture = New CultureInfo("fr-FR")
      If TimeSpan.TryParseExact(intervalString, format, culture, interval) Then
         Console.WriteLine("'{0}' --> {1}", intervalString, interval)
      Else
         Console.WriteLine("Unable to parse {0}", intervalString)
      End If

      ' Parse a single number using the "c" standard format string. 
      intervalString = "12"
      format = "c"
      If TimeSpan.TryParseExact(intervalString, format, Nothing, interval)
         Console.WriteLine("'{0}' --> {1}", intervalString, interval)
      Else
         Console.WriteLine("Unable to parse {0}", intervalString)
      End If
      
      ' Parse a single number using the "%h" custom format string. 
      format = "%h"
      If TimeSpan.TryParseExact(intervalString, format, Nothing, interval)
         Console.WriteLine("'{0}' --> {1}", intervalString, interval)
      Else
         Console.WriteLine("Unable to parse {0}", intervalString)
      End If
      
      ' Parse a single number using the "%s" custom format string. 
      format = "%s"
      If TimeSpan.TryParseExact(intervalString, format, Nothing, interval) Then
         Console.WriteLine("'{0}' --> {1}", intervalString, interval)
      Else
         Console.WriteLine("Unable to parse {0}", intervalString)
      End If
   End Sub
End Module
' The example displays the following output:
'       '17:14' --> 17:14:00
'       Unable to parse 17:14:48
'       Unable to parse 17:14:48.153
'       '3:17:14:48.153' --> 3.17:14:48.1530000
'       Unable to parse 3:17:14:48.153
'       '3:17:14:48,153' --> 3.17:14:48.1530000
'       '12' --> 12.00:00:00
'       '12' --> 12:00:00
'       '12' --> 00:00:12

注釈

TryParseExact(String, String, IFormatProvider, TimeSpan)メソッドで定義された書式である必要があります時間間隔の文字列表現を解析し、formatパラメーター、その先頭および末尾の空白文字が無視される点が異なります。The TryParseExact(String, String, IFormatProvider, TimeSpan) method parses the string representation of a time interval, which must be in the format defined by the format parameter, except that leading and trailing white-space characters are ignored. このメソッドは、ParseExact(String, String, IFormatProvider)メソッド、点を除いて、変換が失敗した場合、その it が例外をスローしません。This method is similar to the ParseExact(String, String, IFormatProvider) method, except that it does not throw an exception if the conversion fails.

formatパラメーターは、1 つの標準書式指定子、または必要な書式を定義する 1 つまたは複数のカスタム書式指定子を含む文字列inputします。The format parameter is a string that contains either a single standard format specifier, or one or more custom format specifiers that define the required format of input. 有効な書式指定文字列についての詳細については、次を参照してください。標準 TimeSpan 書式指定文字列カスタム TimeSpan 書式指定文字列します。For more information about valid format strings, see Standard TimeSpan Format Strings and Custom TimeSpan Format Strings.

重要

TryParseExact(String, String, IFormatProvider, TimeSpan)メソッドで指定されたカルチャの規則を使用する、formatProvider場合にのみパラメーターformat標準TimeSpan値の"g"または"G"のいずれかの文字列の書式を設定します。The TryParseExact(String, String, IFormatProvider, TimeSpan) method uses the conventions of the culture specified by the formatProvider parameter only if format is a standard TimeSpan format string whose value is either "g" or "G". "C"、"t"および"T"標準書式指定文字列は、インバリアント カルチャの書式指定規則を使用します。The "c", "t", and "T" standard format strings use the formatting conventions of the invariant culture. カスタム書式指定文字列は、入力文字列の正確な形式を定義し、リテラル文字を使用して時間間隔のコンポーネントを分離します。Custom format strings define the precise format of the input string and use literal characters to separate the components of a time interval.

formatProviderパラメーターは、IFormatProvider場合、返される文字列の書式設定に関するカルチャに固有の情報を提供する実装formatは標準書式指定文字列。The formatProvider parameter is an IFormatProvider implementation that provides culture-specific information about the format of the returned string if format is a standard format string. formatProviderパラメーターには、次のいずれかを指定できます。The formatProvider parameter can be any of the following:

場合formatProvidernullDateTimeFormatInfo現在のカルチャに関連付けられているオブジェクトを使用します。If formatProvider is null, the DateTimeFormatInfo object that is associated with the current culture is used.

こちらもご覧ください

適用対象