TimeSpan.TryParse TimeSpan.TryParse TimeSpan.TryParse TimeSpan.TryParse Method

Определение

Преобразовывает указанное строковое представление интервала времени в его эквивалент TimeSpan и возвращает значение, позволяющее определить успешность преобразования.Converts the specified string representation of a time interval to its TimeSpan equivalent and returns a value that indicates whether the conversion succeeded.

Перегрузки

TryParse(ReadOnlySpan<Char>, IFormatProvider, TimeSpan) TryParse(ReadOnlySpan<Char>, IFormatProvider, TimeSpan) TryParse(ReadOnlySpan<Char>, IFormatProvider, TimeSpan) TryParse(ReadOnlySpan<Char>, IFormatProvider, TimeSpan)
TryParse(ReadOnlySpan<Char>, TimeSpan) TryParse(ReadOnlySpan<Char>, TimeSpan) TryParse(ReadOnlySpan<Char>, TimeSpan) TryParse(ReadOnlySpan<Char>, TimeSpan)
TryParse(String, TimeSpan) TryParse(String, TimeSpan) TryParse(String, TimeSpan) TryParse(String, TimeSpan)

Преобразовывает строковое представление интервала времени в его эквивалент TimeSpan и возвращает значение, позволяющее определить успешность преобразования.Converts the string representation of a time interval to its TimeSpan equivalent and returns a value that indicates whether the conversion succeeded.

TryParse(String, IFormatProvider, TimeSpan) TryParse(String, IFormatProvider, TimeSpan) TryParse(String, IFormatProvider, TimeSpan) TryParse(String, IFormatProvider, TimeSpan)

Преобразовывает заданное строковое представление интервала времени в его эквивалент TimeSpan, используя указанную информацию о форматировании, связанную с языком и региональными параметрами, и возвращает значение, которое показывает успешность преобразования.Converts the string representation of a time interval to its TimeSpan equivalent by using the specified culture-specific formatting information, and returns a value that indicates whether the conversion succeeded.

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

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

Параметры

Возвраты

TryParse(ReadOnlySpan<Char>, TimeSpan) TryParse(ReadOnlySpan<Char>, TimeSpan) TryParse(ReadOnlySpan<Char>, TimeSpan) TryParse(ReadOnlySpan<Char>, TimeSpan)

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

Параметры

Возвраты

TryParse(String, TimeSpan) TryParse(String, TimeSpan) TryParse(String, TimeSpan) TryParse(String, TimeSpan)

Преобразовывает строковое представление интервала времени в его эквивалент TimeSpan и возвращает значение, позволяющее определить успешность преобразования.Converts the string representation of a time interval to its TimeSpan equivalent and returns a value that indicates whether the conversion succeeded.

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

Параметры

s
String String String String

Строка, которая указывает преобразуемый интервал времени.A string that specifies the time interval to convert.

result
TimeSpan TimeSpan TimeSpan TimeSpan

После возврата из этого метода содержит объект, представляющий интервал времени, заданный в параметре s, или значение Zero, если преобразование завершилось неудачей.When this method returns, contains an object that represents the time interval specified by s, or Zero if the conversion failed. Этот параметр передается неинициализированным.This parameter is passed uninitialized.

Возвраты

Значение true, если параметр s успешно преобразован; в противном случае — значение false.true if s was converted successfully; otherwise, false. Эта операция возвращает значение false, если параметр s имеет значение null или Empty, либо его формат недопустим, либо он представляет интервал времени, меньший MinValue или больший MaxValue, либо минимум один из его компонентов — количество дней, часов, минут или секунд — находится вне допустимого диапазона.This operation returns false if the s parameter is null or Empty, has an invalid format, represents a time interval that is less than MinValue or greater than MaxValue, or has at least one days, hours, minutes, or seconds component outside its valid range.

Примеры

В следующем примере TryParse метод используется для создания TimeSpan объектов из допустимых TimeSpan строк и для указания на сбой операции синтаксического анализа из-за недопустимой строки временного диапазона.The following example uses the TryParse method to create TimeSpan objects from valid TimeSpan strings and to indicate when the parse operation has failed because the time span string is invalid.

using System;

public class TryParse
{
   private static void ParseTimeSpan(string intervalStr)
   {
      // Write the first part of the output line.
      Console.Write( "{0,20}   ", intervalStr );

      // Parse the parameter, and then convert it back to a string.
      TimeSpan intervalVal; 
      if (TimeSpan.TryParse(intervalStr, out intervalVal)) 
      {
         string intervalToStr = intervalVal.ToString();
  
         // Pad the end of the TimeSpan string with spaces if it 
         // does not contain milliseconds.
         int pIndex = intervalToStr.IndexOf(':');
         pIndex = intervalToStr.IndexOf('.', pIndex);
         if (pIndex < 0)
            intervalToStr += "        ";
   
         Console.WriteLine("{0,21}", intervalToStr);
         // Handle failure of TryParse method.
      }
      else
      {
         Console.WriteLine("Parse operation failed.");
      }
   } 
   
   public static void Main()
   {
        Console.WriteLine( "{0,20}   {1,21}", 
            "String to Parse", "TimeSpan" );    
        Console.WriteLine( "{0,20}   {1,21}", 
            "---------------", "---------------------" );    

        ParseTimeSpan("0");
        ParseTimeSpan("14");
        ParseTimeSpan("1:2:3");
        ParseTimeSpan("0:0:0.250");
        ParseTimeSpan("10.20:30:40.50");
        ParseTimeSpan("99.23:59:59.9999999");
        ParseTimeSpan("0023:0059:0059.0099");
        ParseTimeSpan("23:0:0");
        ParseTimeSpan("24:0:0");
        ParseTimeSpan("0:59:0");
        ParseTimeSpan("0:60:0");
        ParseTimeSpan("0:0:59");
        ParseTimeSpan("0:0:60");
        ParseTimeSpan("10:");
        ParseTimeSpan("10:0");
        ParseTimeSpan(":10");
        ParseTimeSpan("0:10");
        ParseTimeSpan("10:20:");
        ParseTimeSpan("10:20:0");
        ParseTimeSpan(".123");
        ParseTimeSpan("0.12:00");
        ParseTimeSpan("10.");
        ParseTimeSpan("10.12");
        ParseTimeSpan("10.12:00");
   }
}
//            String to Parse                TimeSpan
//            ---------------   ---------------------
//                          0        00:00:00
//                         14     14.00:00:00
//                      1:2:3        01:02:03
//                  0:0:0.250        00:00:00.2500000
//             10.20:30:40.50     10.20:30:40.5000000
//        99.23:59:59.9999999     99.23:59:59.9999999
//        0023:0059:0059.0099        23:59:59.0099000
//                     23:0:0        23:00:00
//                     24:0:0   Parse operation failed.
//                     0:59:0        00:59:00
//                     0:60:0   Parse operation failed.
//                     0:0:59        00:00:59
//                     0:0:60   Parse operation failed.
//                        10:   Parse operation failed.
//                       10:0        10:00:00
//                        :10   Parse operation failed.
//                       0:10        00:10:00
//                     10:20:   Parse operation failed.
//                    10:20:0        10:20:00
//                       .123   Parse operation failed.
//                    0.12:00        12:00:00
//                        10.   Parse operation failed.
//                      10.12   Parse operation failed.
//                   10.12:00     10.12:00:00
Module TryParse
    Sub ParseTimeSpan( intervalStr As String )
        ' Write the first part of the output line.
        Console.Write( "{0,20}   ", intervalStr )

        ' Parse the parameter, and then convert it back to a string.
         Dim intervalVal As TimeSpan 
         If TimeSpan.TryParse( intervalStr, intervalVal ) Then
            Dim intervalToStr As String = intervalVal.ToString( )
   
            ' Pad the end of the TimeSpan string with spaces if it 
            ' does not contain milliseconds.
            Dim pIndex As Integer = intervalToStr.IndexOf( ":"c )
            pIndex = intervalToStr.IndexOf( "."c, pIndex )
            If pIndex < 0 Then   intervalToStr &= "        "
   
            Console.WriteLine( "{0,21}", intervalToStr )
         ' Handle failure of TryParse method.
         Else
            Console.WriteLine("Parse operation failed.")
        End If
    End Sub 

    Public Sub Main( )
        Console.WriteLine( "{0,20}   {1,21}", _
            "String to Parse", "TimeSpan" )    
        Console.WriteLine( "{0,20}   {1,21}", _
            "---------------", "---------------------" )    

        ParseTimeSpan("0")
        ParseTimeSpan("14")
        ParseTimeSpan("1:2:3")
        ParseTimeSpan("0:0:0.250")
        ParseTimeSpan("10.20:30:40.50")
        ParseTimeSpan("99.23:59:59.9999999")
        ParseTimeSpan("0023:0059:0059.0099")
        ParseTimeSpan("23:0:0")
        ParseTimeSpan("24:0:0")
        ParseTimespan("0:59:0")
        ParseTimeSpan("0:60:0")
        ParseTimespan("0:0:59")
        ParseTimeSpan("0:0:60")
        ParseTimeSpan("10:")
        ParsetimeSpan("10:0")
        ParseTimeSpan(":10")
        ParseTimeSpan("0:10")
        ParseTimeSpan("10:20:")
        ParseTimeSpan("10:20:0")
        ParseTimeSpan(".123")
        ParseTimeSpan("0.12:00")
        ParseTimeSpan("10.")
        ParseTimeSpan("10.12")
        ParseTimeSpan("10.12:00")
    End Sub 
End Module 
' This example generates the following output:
'            String to Parse                TimeSpan
'            ---------------   ---------------------
'                          0        00:00:00
'                         14     14.00:00:00
'                      1:2:3        01:02:03
'                  0:0:0.250        00:00:00.2500000
'             10.20:30:40.50     10.20:30:40.5000000
'        99.23:59:59.9999999     99.23:59:59.9999999
'        0023:0059:0059.0099        23:59:59.0099000
'                     23:0:0        23:00:00
'                     24:0:0   Parse operation failed.
'                     0:59:0        00:59:00
'                     0:60:0   Parse operation failed.
'                     0:0:59        00:00:59
'                     0:0:60   Parse operation failed.
'                        10:   Parse operation failed.
'                       10:0        10:00:00
'                        :10   Parse operation failed.
'                       0:10        00:10:00
'                     10:20:   Parse operation failed.
'                    10:20:0        10:20:00
'                       .123   Parse operation failed.
'                    0.12:00        12:00:00
'                        10.   Parse operation failed.
'                      10.12   Parse operation failed.
'                   10.12:00     10.12:00:00

Комментарии

Метод похож на TimeSpan.Parse(String) метод, за исключением того, что он не создает исключение, если преобразование завершается неудачей. TryParseThe TryParse method is like the TimeSpan.Parse(String) method, except that it does not throw an exception if the conversion fails.

s Параметр содержит спецификацию интервала времени в формате:The s parameter contains a time interval specification in the form:

[WS] [-] { d | d. чч:мм[:СС[. FF]] | чч:мм[:СС[. FF]]} [WS][ws][-]{ d | d.hh:mm[:ss[.ff]] | hh:mm[:ss[.ff]] }[ws]

Элементы в квадратных скобках ([и]) являются необязательными.Elements in square brackets ([ and ]) are optional. Требуется один выбор из списка альтернатив, заключенного в фигурные скобки ({и}) и разделенных|вертикальными чертами ().One selection from the list of alternatives enclosed in braces ({ and }) and separated by vertical bars (|) is required. Каждый из элементов описан в таблице ниже.The following table describes each element.

ЭлементElement ОписаниеDescription
wsws Необязательный пробел.Optional white space.
- Необязательный знак минус, который указывает на TimeSpanотрицательное значение.An optional minus sign, which indicates a negative TimeSpan.
dd Дни в диапазоне от 0 до 10675199.Days, ranging from 0 to 10675199.
.. Символ с учетом языка и региональных параметров, разделяющий дни по часам.A culture-sensitive symbol that separates days from hours. В инвариантном формате используется символ точки (".").The invariant format uses a period (".") character.
hhhh Часы, в диапазоне от 0 до 23.Hours, ranging from 0 to 23.
:: Символ разделителя времени с учетом языка и региональных параметров.The culture-sensitive time separator symbol. В инвариантном формате используется символ двоеточия (":").The invariant format uses a colon (":") character.
mmmm Минут, в диапазоне от 0 до 59.Minutes, ranging from 0 to 59.
ssss Необязательные секунды в диапазоне от 0 до 59.Optional seconds, ranging from 0 to 59.
.. Символ с учетом языка и региональных параметров, разделяющий секунды от долей секунды.A culture-sensitive symbol that separates seconds from fractions of a second. В инвариантном формате используется символ точки (".").The invariant format uses a period (".") character.
ffff Необязательные доли секунды, состоящие из одной и семи десятичных цифр.Optional fractional seconds, consisting of one to seven decimal digits.

Компоненты s должны совместно указывать интервал времени, который больше или TimeSpan.MinValue равен и TimeSpan.MaxValueменьше или равен.The components of s must collectively specify a time interval that is greater than or equal to TimeSpan.MinValue and less than or equal to TimeSpan.MaxValue.

Метод пытается выполнить синтаксический s анализ с использованием каждого из форматов, зависящих от языка и региональных параметров, для текущего языка и региональных параметров. Parse(String)The Parse(String) method tries to parse s by using each of the culture-specific formats for the current culture.

Примечания для вызывающих объектовNotes to callers

В некоторых случаях, когда компонент временного интервала в строке для синтаксического анализа содержит более семи цифр, операции анализа, выполненные в .NET Framework 3,5 и более ранних версиях, могут завершаться сбоем и OverflowException вызывать в .NET Framework 4 и более поздних версиях.In some cases, when a time interval component in the string to be parsed contains more than seven digits, parsing operations that succeed in the .NET Framework 3.5 and earlier versions may fail and throw an OverflowException in the .NET Framework 4 and later versions. Этот сценарий показан в следующем примере.The following example illustrates this scenario.

string value = "000000006";
TimeSpan interval;
if (TimeSpan.TryParse(value, out interval))
   Console.WriteLine("{0} --> {1}", value, interval);
else
   Console.WriteLine("Unable to parse '{0}'", value);
// Output from .NET Framework 3.5 and earlier versions:
//       000000006 --> 6.00:00:00
// Output from .NET Framework 4:
//       Unable to parse //000000006//
Dim value As String = "000000006"
Dim interval As TimeSpan
If TimeSpan.TryParse(value, interval) Then
   Console.WriteLine("{0} --> {1}", value, interval)
Else
   Console.WriteLine("Unable to parse '{0}'", value)
End If
' Output from .NET Framework 3.5 and earlier versions:
'       000000006 --> 6.00:00:00
' Output from .NET Framework 4:
'       Unable to parse '000000006'

TryParse(String, IFormatProvider, TimeSpan) TryParse(String, IFormatProvider, TimeSpan) TryParse(String, IFormatProvider, TimeSpan) TryParse(String, IFormatProvider, TimeSpan)

Преобразовывает заданное строковое представление интервала времени в его эквивалент TimeSpan, используя указанную информацию о форматировании, связанную с языком и региональными параметрами, и возвращает значение, которое показывает успешность преобразования.Converts the string representation of a time interval to its TimeSpan equivalent by using the specified culture-specific formatting information, and returns a value that indicates whether the conversion succeeded.

public:
 static bool TryParse(System::String ^ input, IFormatProvider ^ formatProvider, [Runtime::InteropServices::Out] TimeSpan % result);
public static bool TryParse (string input, IFormatProvider formatProvider, out TimeSpan result);
static member TryParse : string * IFormatProvider *  -> bool
Public Shared Function TryParse (input 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.

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 успешно преобразован; в противном случае — значение false.true if input was converted successfully; otherwise, false. Эта операция возвращает значение false, если параметр input имеет значение null или Empty, либо его формат недопустим, либо он представляет интервал времени, меньший MinValue или больший MaxValue, либо минимум один из его компонентов — количество дней, часов, минут или секунд — находится вне допустимого диапазона.This operation returns false if the input parameter is null or Empty, has an invalid format, represents a time interval that is less than MinValue or greater than MaxValue, or has at least one days, hours, minutes, or seconds component outside its valid range.

Примеры

В следующем примере определяется массив CultureInfo объектов и используется каждый объект в вызовах TryParse(String, IFormatProvider, TimeSpan) метода для анализа элементов в массиве строк.The following example defines an array of CultureInfo objects, and uses each object in calls to the TryParse(String, IFormatProvider, TimeSpan) method to parse the elements in a string array. В примере показано, как соглашения определенного языка и региональных параметров влияют на операцию форматирования.The example illustrates how the conventions of a specific culture influence the formatting operation.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] values = { "6", "6:12", "6:12:14", "6:12:14:45", 
                          "6.12:14:45", "6:12:14:45.3448", 
                          "6:12:14:45,3448", "6:34:14:45" };
      CultureInfo[] cultures = { new CultureInfo("en-US"), 
                                 new CultureInfo("ru-RU"),
                                 CultureInfo.InvariantCulture };
      
      string header = String.Format("{0,-17}", "String");
      foreach (CultureInfo culture in cultures)
         header += culture.Equals(CultureInfo.InvariantCulture) ? 
                      String.Format("{0,20}", "Invariant") :
                      String.Format("{0,20}", culture.Name);

      Console.WriteLine(header);
      Console.WriteLine();
      
      foreach (string value in values)
      {
         Console.Write("{0,-17}", value);
         foreach (CultureInfo culture in cultures)
         {
            TimeSpan interval = new TimeSpan();
            if (TimeSpan.TryParse(value, culture, out interval))
               Console.Write("{0,20}", interval.ToString("c"));
            else
               Console.Write("{0,20}", "Unable to Parse");
         }
         Console.WriteLine();                                
      }
   }
}
// The example displays the following output:
//    String                          en-US               ru-RU           Invariant
//    
//    6                          6.00:00:00          6.00:00:00          6.00:00:00
//    6:12                         06:12:00            06:12:00            06:12:00
//    6:12:14                      06:12:14            06:12:14            06:12:14
//    6:12:14:45                 6.12:14:45          6.12:14:45          6.12:14:45
//    6.12:14:45                 6.12:14:45          6.12:14:45          6.12:14:45
//    6:12:14:45.3448    6.12:14:45.3448000     Unable to Parse  6.12:14:45.3448000
//    6:12:14:45,3448       Unable to Parse  6.12:14:45.3448000     Unable to Parse
//    6:34:14:45            Unable to Parse     Unable to Parse     Unable to Parse
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim values() As String = { "6", "6:12", "6:12:14", "6:12:14:45", 
                                 "6.12:14:45", "6:12:14:45.3448", 
                                 "6:12:14:45,3448", "6:34:14:45" }
      Dim cultures() As CultureInfo = { New CultureInfo("en-US"), 
                                        New CultureInfo("ru-RU"),
                                        CultureInfo.InvariantCulture }
      
      Dim header As String = String.Format("{0,-17}", "String")
      For Each culture As CultureInfo In cultures
         header += If(culture.Equals(CultureInfo.InvariantCulture), 
                      String.Format("{0,20}", "Invariant"),
                      String.Format("{0,20}", culture.Name))
      Next
      Console.WriteLine(header)
      Console.WriteLine()
      
      For Each value As String In values
         Console.Write("{0,-17}", value)
         For Each culture As CultureInfo In cultures
            Dim interval As New TimeSpan()
            If TimeSpan.TryParse(value, culture, interval) Then
               Console.Write("{0,20}", interval.ToString("c"))
            Else
               Console.Write("{0,20}", "Unable to Parse")
            End If     
         Next
         Console.WriteLine()                                
      Next
   End Sub
End Module
' The example displays the following output:
'    String                          en-US               ru-RU           Invariant
'    
'    6                          6.00:00:00          6.00:00:00          6.00:00:00
'    6:12                         06:12:00            06:12:00            06:12:00
'    6:12:14                      06:12:14            06:12:14            06:12:14
'    6:12:14:45                 6.12:14:45          6.12:14:45          6.12:14:45
'    6.12:14:45                 6.12:14:45          6.12:14:45          6.12:14:45
'    6:12:14:45.3448    6.12:14:45.3448000     Unable to Parse  6.12:14:45.3448000
'    6:12:14:45,3448       Unable to Parse  6.12:14:45.3448000     Unable to Parse
'    6:34:14:45            Unable to Parse     Unable to Parse     Unable to Parse

Комментарии

Метод похож на Parse(String, IFormatProvider) метод, за исключением того, что он не создает исключение, если преобразование завершается неудачей. TryParse(String, IFormatProvider, TimeSpan)The TryParse(String, IFormatProvider, TimeSpan) method is like the Parse(String, IFormatProvider) method, except that it does not throw an exception if the conversion fails.

input Параметр содержит спецификацию интервала времени в формате:The input parameter contains a time interval specification in the form:

[WS] [-] { d | d. чч:мм[:СС[. FF]] | чч:мм[:СС[. FF]]} [WS][ws][-]{ d | d.hh:mm[:ss[.ff]] | hh:mm[:ss[.ff]] }[ws]

Элементы в квадратных скобках ([и]) являются необязательными.Elements in square brackets ([ and ]) are optional. Требуется один выбор из списка альтернатив, заключенного в фигурные скобки ({и}) и разделенных|вертикальными чертами ().One selection from the list of alternatives enclosed in braces ({ and }) and separated by vertical bars (|) is required. Каждый из элементов описан в таблице ниже.The following table describes each element.

ЭлементElement ОписаниеDescription
wsws Необязательный пробел.Optional white space.
- Необязательный знак минус, который указывает на TimeSpanотрицательное значение.An optional minus sign, which indicates a negative TimeSpan.
dd Дни в диапазоне от 0 до 10675199.Days, ranging from 0 to 10675199.
.. Символ с учетом языка и региональных параметров, разделяющий дни по часам.A culture-sensitive symbol that separates days from hours. В инвариантном формате используется символ точки (".").The invariant format uses a period (".") character.
hhhh Часы, в диапазоне от 0 до 23.Hours, ranging from 0 to 23.
:: Символ разделителя времени с учетом языка и региональных параметров.The culture-sensitive time separator symbol. В инвариантном формате используется символ двоеточия (":").The invariant format uses a colon (":") character.
mmmm Минут, в диапазоне от 0 до 59.Minutes, ranging from 0 to 59.
ssss Необязательные секунды в диапазоне от 0 до 59.Optional seconds, ranging from 0 to 59.
.. Символ с учетом языка и региональных параметров, разделяющий секунды от долей секунды.A culture-sensitive symbol that separates seconds from fractions of a second. В инвариантном формате используется символ точки (".").The invariant format uses a period (".") character.
ffff Необязательные доли секунды, состоящие из одной и семи десятичных цифр.Optional fractional seconds, consisting of one to seven decimal digits.

Компоненты input должны совместно указывать интервал времени, который больше или TimeSpan.MinValue равен и TimeSpan.MaxValueменьше или равен.The components of input must collectively specify a time interval that is greater than or equal to TimeSpan.MinValue and less than or equal to TimeSpan.MaxValue.

Метод пытается выполнить синтаксический input анализ с использованием каждого из форматов, зависящих от языка и региональных параметров, для языка и региональных параметров, заданных параметром formatProvider. TryParse(String, IFormatProvider, TimeSpan)The TryParse(String, IFormatProvider, TimeSpan) method tries to parse input by using each of the culture-specific formats for the culture specified by formatProvider.

formatProvider Параметр —этореализация,котораяпредоставляетсведенияоформатевозвращаемойстроки,зависящейотIFormatProvider языка и региональных параметров.The formatProvider parameter is an IFormatProvider implementation that provides culture-specific information about the format of the returned string. formatProvider Параметр может быть любым из следующих:The formatProvider parameter can be any of the following:

  • CultureInfo Объект, представляющий язык и региональные параметры, соглашения о форматировании которых должны быть отражены в возвращаемой строке.A CultureInfo object that represents the culture whose formatting conventions are to be reflected in the returned string. Объект, возвращаемый свойством, определяет форматирование возвращаемой строки. CultureInfo.DateTimeFormat DateTimeFormatInfoThe DateTimeFormatInfo object returned by the CultureInfo.DateTimeFormat property defines the formatting of the returned string.

  • DateTimeFormatInfo Объект, определяющий форматирование возвращаемой строки.A DateTimeFormatInfo object that defines the formatting of the returned string.

  • Пользовательский объект, реализующий IFormatProvider интерфейс.A custom object that implements the IFormatProvider interface. Его IFormatProvider.GetFormat методDateTimeFormatInfo возвращает объект, предоставляющий сведения о форматировании.Its IFormatProvider.GetFormat method returns a DateTimeFormatInfo object that provides formatting information.

Если formatProvider имеет nullзначение, DateTimeFormatInfo то используется объект, связанный с текущим языком и региональными параметрами.If formatProvider is null, the DateTimeFormatInfo object that is associated with the current culture is used.

Примечания для вызывающих объектовNotes to callers

В некоторых случаях, когда компонент временного интервала в строке для синтаксического анализа содержит более семи цифр, операции анализа, которые выполняются успешно и возвращают .NET Framework 3,5 и более ранних версий, могут завершаться сбоем и возвращаться в The.NET Framework. 4 и более поздних версий этот сценарий показан в следующем примере.In some cases, when a time interval component in the string to be parsed contains more than seven digits, parsing operations that succeed and return in the .NET Framework 3.5 and earlier versions may fail and return in the.NET Framework 4 and later versions, The following example illustrates this scenario.

string value = "000000006";
TimeSpan interval;
if (TimeSpan.TryParse(value, out interval))
   Console.WriteLine("{0} --> {1}", value, interval);
else
   Console.WriteLine("Unable to parse '{0}'", value);
// Output from .NET Framework 3.5 and earlier versions:
//       000000006 --> 6.00:00:00
// Output from .NET Framework 4:
//       Unable to parse //000000006//
Dim value As String = "000000006"
Dim interval As TimeSpan
If TimeSpan.TryParse(value, interval) Then
   Console.WriteLine("{0} --> {1}", value, interval)
Else
   Console.WriteLine("Unable to parse '{0}'", value)
End If
' Output from .NET Framework 3.5 and earlier versions:
'       000000006 --> 6.00:00:00
' Output from .NET Framework 4:
'       Unable to parse '000000006'

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