TimeSpan.Parse Метод

Определение

Преобразует строковое представление интервала времени в его эквивалент TimeSpan.

Перегрузки

Parse(String)

Преобразует строковое представление интервала времени в его эквивалент TimeSpan.

Parse(ReadOnlySpan<Char>, IFormatProvider)

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

Parse(String, IFormatProvider)

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

Parse(String)

Преобразует строковое представление интервала времени в его эквивалент TimeSpan.

public:
 static TimeSpan Parse(System::String ^ s);
public static TimeSpan Parse (string s);
static member Parse : string -> TimeSpan
Public Shared Function Parse (s As String) As TimeSpan

Параметры

s
String

Строка, которая указывает преобразуемый интервал времени.

Возвращаемое значение

TimeSpan

Интервал времени, соответствующий параметру s.

Исключения

s имеет значение null.

Параметр s задан в недопустимом формате.

s представляет число, которое меньше TimeSpan.MinValue или больше TimeSpan.MaxValue.

-или- Как минимум один из компонентов дней, часов, минут или секунд выходит за пределы допустимого диапазона.

Примеры

В следующем примере метод используется Parse для преобразования каждого элемента в строковом массиве TimeSpan в значение. Он изменяет текущий язык и региональные параметры системы на хорватский - Хорватию ("hr-HR") и английский - США ("en-US"), чтобы проиллюстрировать, как текущий язык и региональные параметры системы влияют на операцию синтаксического анализа.

using System;
using System.Globalization;
using System.Threading;

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" };
      string[] cultureNames = { "hr-HR", "en-US"};
      
      // Change the current culture.
      foreach (string cultureName in cultureNames)
      {
         Thread.CurrentThread.CurrentCulture = new CultureInfo(cultureName);
         Console.WriteLine("Current Culture: {0}", 
                           Thread.CurrentThread.CurrentCulture.Name);
         foreach (string value in values)
         {
            try {
               TimeSpan ts = TimeSpan.Parse(value);
               Console.WriteLine("{0} --> {1}", value, ts.ToString("c"));
            }
            catch (FormatException) {
               Console.WriteLine("{0}: Bad Format", value);
            }   
            catch (OverflowException) {
               Console.WriteLine("{0}: Overflow", value);
            }
         } 
         Console.WriteLine();                                
      }
   }
}
// The example displays the following output:
//    Current Culture: hr-HR
//    6 --> 6.00:00:00
//    6:12 --> 06:12:00
//    6: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.3448: Bad Format
//    6:12:14:45,3448 --> 6.12:14:45.3448000
//    6:34:14:45: Overflow
//    
//    Current Culture: en-US
//    6 --> 6.00:00:00
//    6:12 --> 06:12:00
//    6: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.3448 --> 6.12:14:45.3448000
//    6:12:14:45,3448: Bad Format
//    6:34:14:45: Overflow
open System
open System.Globalization
open System.Threading

let 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" |]
let cultureNames = [| "hr-HR"; "en-US" |]

// Change the current culture.
for cultureName in cultureNames do
    Thread.CurrentThread.CurrentCulture <- CultureInfo cultureName
    printfn $"Current Culture: {Thread.CurrentThread.CurrentCulture.Name}" 
    for value in values do
        try 
            let ts = TimeSpan.Parse value
            printfn $"{value} --> {ts:c}"
        with 
        | :? FormatException ->
            printfn $"{value}: Bad Format"
        | :? OverflowException ->
            printfn $"{value}: Overflow"
    printfn ""                                
// The example displays the following output:
//    Current Culture: hr-HR
//    6 --> 6.00:00:00
//    6:12 --> 06:12:00
//    6: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.3448: Bad Format
//    6:12:14:45,3448 --> 6.12:14:45.3448000
//    6:34:14:45: Overflow
//    
//    Current Culture: en-US
//    6 --> 6.00:00:00
//    6:12 --> 06:12:00
//    6: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.3448 --> 6.12:14:45.3448000
//    6:12:14:45,3448: Bad Format
//    6:34:14:45: Overflow
Imports System.Globalization
Imports System.Threading

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 cultureNames() As String = { "hr-HR", "en-US"}
      
      ' Change the current culture.
      For Each cultureName As String In cultureNames
         Thread.CurrentThread.CurrentCulture = New CultureInfo(cultureName)
         Console.WriteLine("Current Culture: {0}", 
                           Thread.CurrentThread.CurrentCulture.Name)
         For Each value As String In values
            Try
               Dim ts As TimeSpan = TimeSpan.Parse(value)
               Console.WriteLine("{0} --> {1}", value, ts.ToString("c"))
            Catch e As FormatException
               Console.WriteLine("{0}: Bad Format", value)
            Catch e As OverflowException
               Console.WriteLine("{0}: Overflow", value)
            End Try      
         Next 
         Console.WriteLine()                                
      Next
   End Sub
End Module
' The example displays the following output:
'       Current Culture: hr-HR
'       6 --> 6.00:00:00
'       6:12 --> 06:12:00
'       6: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.3448: Bad Format
'       6:12:14:45,3448 --> 6.12:14:45.3448000
'       6:34:14:45: Overflow
'       
'       Current Culture: en-US
'       6 --> 6.00:00:00
'       6:12 --> 06:12:00
'       6: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.3448 --> 6.12:14:45.3448000
'       6:12:14:45,3448: Bad Format
'       6:34:14:45: Overflow

Комментарии

Параметр s содержит спецификацию интервала времени в форме:

[ws] [-] { d | [d.] чч:мм[:сс[.ff]] }[ws]

Элементы в квадратных скобках ([и]) являются необязательными. Требуется один выбор из списка альтернативных вариантов, заключенных в фигурные скобки ({ и }) и разделенных вертикальными полосами (|). Каждый из элементов описан в таблице ниже.

Элемент Описание
ws Необязательный пробел.
- Необязательный знак минуса, указывающий на отрицательный TimeSpan.
d Дни в диапазоне от 0 до 10675199.
. Символ с учетом языка и региональных параметров, который отделяет дни от часов. В инвариантном формате используется символ точки (".").
hh Часы, от 0 до 23.
: Символ разделителя времени с учетом языка и региональных параметров. Инвариантный формат использует двоеточие (":").
мм Минуты в диапазоне от 0 до 59.
ss Необязательные секунды от 0 до 59.
. Символ с учетом языка и региональных параметров, который отделяет секунды от долей секунды. В инвариантном формате используется символ точки (".").
Ff Необязательные дробные секунды, состоящие из одной до семи десятичных цифр.

s Если аргумент не является только значением дня, он должен включать часы и минуты компонента; другие компоненты являются необязательными. Если они присутствуют, значения каждого компонента времени должны находиться в указанном диапазоне. Например, значение hh, компонент часов, должен находиться в диапазоне от 0 до 23. Из-за этого передача метода "23:00:00" Parse возвращает интервал времени в 23 часа. С другой стороны, передача "24:00:00" возвращает интервал времени в 24 дня. Так как "24" находится за пределами диапазона компонента часов, он интерпретируется как компонент дней.

Компоненты s должны совместно указывать интервал времени, который больше или равен TimeSpan.MinValue и меньше или равен TimeSpan.MaxValue.

Метод Parse(String) пытается проанализировать s с помощью каждого из форматов языка и региональных параметров для текущего языка и региональных параметров.

Примечания к вызывающим абонентам

Если компонент интервала времени в строке для синтаксического анализа содержит более семи цифр, операции синтаксического анализа в платформа .NET Framework 3.5 и более ранних версиях могут вести себя по-разному от операций синтаксического анализа в платформа .NET Framework 4 и более поздних версиях. В некоторых случаях операции синтаксического анализа, которые выполняются в платформа .NET Framework 3.5 и более ранних версиях, могут завершиться ошибкой и вызвать OverflowException в платформа .NET Framework 4 и более поздних версий. В других случаях операции синтаксического анализа, которые вызывают FormatException исключение в платформа .NET Framework 3.5 и более ранних версиях, могут завершиться ошибкой и вызвать OverflowException в платформа .NET Framework 4 и более поздних версий. В следующем примере показаны оба сценария.

string[] values = { "000000006", "12.12:12:12.12345678" };
foreach (string value in values)
{
   try {
      TimeSpan interval = TimeSpan.Parse(value);
      Console.WriteLine("{0} --> {1}", value, interval);
   }   
   catch (FormatException) {
      Console.WriteLine("{0}: Bad Format", value);
   }   
   catch (OverflowException) {
      Console.WriteLine("{0}: Overflow", value);
   }
}

// Output from .NET Framework 3.5 and earlier versions:
//       000000006 --> 6.00:00:00
//       12.12:12:12.12345678: Bad Format      
// Output from .NET Framework 4 and later versions or .NET Core:
//       000000006: Overflow
//       12.12:12:12.12345678: Overflow
open System

let values = [| "000000006"; "12.12:12:12.12345678" |]
for value in values do
    try
        let interval = TimeSpan.Parse value
        printfn $"{value} --> {interval}"   
    with
    | :? FormatException ->
        printfn $"{value}: Bad Format"
    | :? OverflowException ->
        printfn $"{value}: Overflow"

// Output from .NET Framework 3.5 and earlier versions:
//       000000006 --> 6.00:00:00
//       12.12:12:12.12345678: Bad Format      
// Output from .NET Framework 4 and later versions or .NET Core:
//       000000006: Overflow
//       12.12:12:12.12345678: Overflow
Dim values() As String = { "000000006", "12.12:12:12.12345678" }
For Each value As String In values
   Try
      Dim interval As TimeSpan = TimeSpan.Parse(value)
      Console.WriteLine("{0} --> {1}", value, interval)
   Catch e As FormatException
      Console.WriteLine("{0}: Bad Format", value)
   Catch e As OverflowException
      Console.WriteLine("{0}: Overflow", value)
   End Try         
Next
' Output from .NET Framework 3.5 and earlier versions:
'       000000006 --> 6.00:00:00
'       12.12:12:12.12345678: Bad Format      
' Output from .NET Framework 4:
'       000000006: Overflow
'       12.12:12:12.12345678: Overflow

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

Parse(ReadOnlySpan<Char>, IFormatProvider)

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

public static TimeSpan Parse (ReadOnlySpan<char> input, IFormatProvider? formatProvider = default);
public static TimeSpan Parse (ReadOnlySpan<char> input, IFormatProvider formatProvider = default);
static member Parse : ReadOnlySpan<char> * IFormatProvider -> TimeSpan
Public Shared Function Parse (input As ReadOnlySpan(Of Char), Optional formatProvider As IFormatProvider = Nothing) As TimeSpan

Параметры

input
ReadOnlySpan<Char>

Диапазон, содержащий символы, которые представляют интервал времени для преобразования.

formatProvider
IFormatProvider

Объект, предоставляющий сведения о форматировании для определенного языка и региональных параметров.

Возвращаемое значение

TimeSpan

Интервал времени, соответствующий параметру input, в виде, заданном параметром formatProvider.

Реализации

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

Parse(String, IFormatProvider)

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

public:
 static TimeSpan Parse(System::String ^ input, IFormatProvider ^ formatProvider);
public:
 static TimeSpan Parse(System::String ^ input, IFormatProvider ^ formatProvider) = IParsable<TimeSpan>::Parse;
public static TimeSpan Parse (string input, IFormatProvider formatProvider);
public static TimeSpan Parse (string input, IFormatProvider? formatProvider);
static member Parse : string * IFormatProvider -> TimeSpan
Public Shared Function Parse (input As String, formatProvider As IFormatProvider) As TimeSpan

Параметры

input
String

Строка, которая указывает преобразуемый интервал времени.

formatProvider
IFormatProvider

Объект, предоставляющий сведения о форматировании для определенного языка и региональных параметров.

Возвращаемое значение

TimeSpan

Интервал времени, соответствующий параметру input, в виде, заданном параметром formatProvider.

Реализации

Исключения

input имеет значение null.

Параметр input задан в недопустимом формате.

input представляет число, которое меньше TimeSpan.MinValue или больше TimeSpan.MaxValue.

-или- Хотя бы один из компонентов дней, часов, минут или секунд в input выходит за пределы допустимого диапазона.

Примеры

В следующем примере определяется массив объектов и каждый объект в вызовах CultureInfo Parse(String, IFormatProvider) метода используется для анализа элементов в строковом массиве. В этом примере показано, как соглашения определенного языка и региональных параметров влияют на операцию форматирования.

using System;
using System.Globalization;
using System.Text.RegularExpressions;

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)
         {
            try {
               TimeSpan ts = TimeSpan.Parse(value, culture);
               Console.Write("{0,20}", ts.ToString("c"));
            }
            catch (FormatException) {
               Console.Write("{0,20}", "Bad Format");
            }   
            catch (OverflowException) {
               Console.Write("{0,20}", "Overflow");
            }      
         }
         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          Bad Format  6.12:14:45.3448000
//    6:12:14:45,3448            Bad Format  6.12:14:45.3448000          Bad Format
//    6:34:14:45                   Overflow            Overflow            Overflow
open System
open System.Globalization
open System.Text.RegularExpressions

let 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" |]
let cultures = 
    [| CultureInfo "en-US" 
       CultureInfo "ru-RU"
       CultureInfo.InvariantCulture |]

let mutable header = $"""{"String",-17}"""
for culture in cultures do
    header <- header +
        if culture.Equals CultureInfo.InvariantCulture then 
            $"""{"Invariant",20}"""
        else
            $"{culture.Name,20}"
printfn $"{header}\m"

for value in values do
    printf $"{value,-17}"
    for culture in cultures do
        try
            let ts = TimeSpan.Parse(value, culture)
            printf $"{ts,20:c}"
        with
        | :? FormatException ->
            printf $"""{"Bad Format",20}"""
        | :? OverflowException ->
            printf $"""{"Overflow",20}"""
    printfn ""                      
// 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          Bad Format  6.12:14:45.3448000
//    6:12:14:45,3448            Bad Format  6.12:14:45.3448000          Bad Format
//    6:34:14:45                   Overflow            Overflow            Overflow
Imports System.Globalization
Imports System.Threading

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
            Try
               Dim ts As TimeSpan = TimeSpan.Parse(value, culture)
               Console.Write("{0,20}", ts.ToString("c"))
            Catch e As FormatException
               Console.Write("{0,20}", "Bad Format")
            Catch e As OverflowException
               Console.Write("{0,20}", "Overflow")
            End Try      
         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          Bad Format  6.12:14:45.3448000
'    6:12:14:45,3448            Bad Format  6.12:14:45.3448000          Bad Format
'    6:34:14:45                   Overflow            Overflow            Overflow

Комментарии

Параметр input содержит спецификацию интервала времени в форме:

[ws] [-] { d | [d.] чч:мм[:сс[.ff]] }[ws]

Элементы в квадратных скобках ([ и ]) являются необязательными; требуется один выбор из списка альтернативных вариантов, заключенных в фигурные скобки ({ и }) и разделенных вертикальными полосами (|). Каждый из элементов описан в таблице ниже.

Элемент Описание
ws Необязательный пробел.
- Необязательный знак минуса, указывающий на отрицательный TimeSpan.
d Дни в диапазоне от 0 до 10675199.
. Символ с учетом языка и региональных параметров, который отделяет дни от часов. Значение по умолчанию — символ точки (".").
hh Часы, от 0 до 23.
: Символ разделителя времени с учетом языка и региональных параметров.
мм Минуты в диапазоне от 0 до 59.
ss Необязательные секунды от 0 до 59.
. Символ с учетом языка и региональных параметров, который отделяет секунды от долей секунды. Значение по умолчанию — символ точки (".").
Ff Необязательные дробные секунды, состоящие из одной до семи десятичных цифр.

input Если аргумент не является только значением дня, он должен включать часы и минуты компонента; другие компоненты являются необязательными. Если они присутствуют, значения каждого компонента времени должны находиться в указанном диапазоне. Например, значение hh, компонент часов, должен находиться в диапазоне от 0 до 23. Из-за этого передача метода "23:00:00" Parse возвращает интервал времени в 23 часа. С другой стороны, передача "24:00:00" возвращает интервал времени в 24 дня. Так как "24" находится за пределами диапазона компонента часов, он интерпретируется как компонент дней.

Компоненты input должны совместно указывать интервал времени, который больше или равен TimeSpan.MinValue и меньше или равен TimeSpan.MaxValue.

Метод Parse(String) пытается проанализировать input с помощью каждого из форматов языка и региональных параметров для языка и региональных параметров, заданных параметром formatProvider.

Параметр formatProvider представляет собой IFormatProvider реализацию, которая предоставляет сведения о формате возвращаемой строки с учетом языка и региональных параметров. Параметр formatProvider может быть любым из следующих:

  • Объект CultureInfo , представляющий язык и региональные параметры, соглашения о форматировании которых должны отражаться в возвращаемой строке. Объект DateTimeFormatInfo , CultureInfo.DateTimeFormat возвращаемый свойством, определяет форматирование возвращаемой строки.

  • DateTimeFormatInfo Объект, определяющий форматирование возвращаемой строки.

  • Пользовательский объект, реализующий IFormatProvider интерфейс. Его IFormatProvider.GetFormat метод возвращает DateTimeFormatInfo объект, предоставляющий сведения о форматировании.

Если formatProvider это так null, используется объект, DateTimeFormatInfo связанный с текущим языком и региональными параметрами.

Примечания к вызывающим абонентам

Если компонент интервала времени в строке для синтаксического анализа содержит более семи цифр, операции синтаксического анализа в платформа .NET Framework 3.5 и более ранних версиях могут вести себя по-разному от операций синтаксического анализа в платформа .NET Framework 4 и более поздних версиях. В некоторых случаях операции синтаксического анализа, которые выполняются в платформа .NET Framework 3.5 и более ранних версиях, могут завершиться ошибкой и вызвать OverflowException в платформа .NET Framework 4 и более поздних версий. В других случаях операции синтаксического анализа, которые вызывают FormatException исключение в платформа .NET Framework 3.5 и более ранних версиях, могут завершиться ошибкой и вызвать OverflowException в платформа .NET Framework 4 и более поздних версий. В следующем примере показаны оба сценария.

string[] values = { "000000006", "12.12:12:12.12345678" };
foreach (string value in values)
{
   try {
      TimeSpan interval = TimeSpan.Parse(value);
      Console.WriteLine("{0} --> {1}", value, interval);
   }   
   catch (FormatException) {
      Console.WriteLine("{0}: Bad Format", value);
   }   
   catch (OverflowException) {
      Console.WriteLine("{0}: Overflow", value);
   }
}

// Output from .NET Framework 3.5 and earlier versions:
//       000000006 --> 6.00:00:00
//       12.12:12:12.12345678: Bad Format      
// Output from .NET Framework 4 and later versions or .NET Core:
//       000000006: Overflow
//       12.12:12:12.12345678: Overflow
open System

let values = [| "000000006"; "12.12:12:12.12345678" |]
for value in values do
    try
        let interval = TimeSpan.Parse value
        printfn $"{value} --> {interval}"   
    with
    | :? FormatException ->
        printfn $"{value}: Bad Format"
    | :? OverflowException ->
        printfn $"{value}: Overflow"

// Output from .NET Framework 3.5 and earlier versions:
//       000000006 --> 6.00:00:00
//       12.12:12:12.12345678: Bad Format      
// Output from .NET Framework 4 and later versions or .NET Core:
//       000000006: Overflow
//       12.12:12:12.12345678: Overflow
Dim values() As String = { "000000006", "12.12:12:12.12345678" }
For Each value As String In values
   Try
      Dim interval As TimeSpan = TimeSpan.Parse(value)
      Console.WriteLine("{0} --> {1}", value, interval)
   Catch e As FormatException
      Console.WriteLine("{0}: Bad Format", value)
   Catch e As OverflowException
      Console.WriteLine("{0}: Overflow", value)
   End Try         
Next
' Output from .NET Framework 3.5 and earlier versions:
'       000000006 --> 6.00:00:00
'       12.12:12:12.12345678: Bad Format      
' Output from .NET Framework 4:
'       000000006: Overflow
'       12.12:12:12.12345678: Overflow

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