TimeSpan.Parse TimeSpan.Parse TimeSpan.Parse TimeSpan.Parse Method

Definição

Converte a representação da cadeia de caracteres de um intervalo de tempo em seu equivalente TimeSpan.Converts the string representation of a time interval to its TimeSpan equivalent.

Sobrecargas

Parse(String) Parse(String) Parse(String) Parse(String)

Converte a representação da cadeia de caracteres de um intervalo de tempo em seu equivalente TimeSpan.Converts the string representation of a time interval to its TimeSpan equivalent.

Parse(ReadOnlySpan<Char>, IFormatProvider) Parse(ReadOnlySpan<Char>, IFormatProvider) Parse(ReadOnlySpan<Char>, IFormatProvider)
Parse(String, IFormatProvider) Parse(String, IFormatProvider) Parse(String, IFormatProvider) Parse(String, IFormatProvider)

Converte a representação de cadeia de caracteres de um intervalo de hora em seu equivalente de TimeSpan usando as informações de formato específicas da cultura especificadas.Converts the string representation of a time interval to its TimeSpan equivalent by using the specified culture-specific format information.

Parse(String) Parse(String) Parse(String) Parse(String)

Converte a representação da cadeia de caracteres de um intervalo de tempo em seu equivalente TimeSpan.Converts the string representation of a time interval to its TimeSpan equivalent.

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

Parâmetros

s
String String String String

Uma cadeia de caracteres que especifica o intervalo de tempo a ser convertido.A string that specifies the time interval to convert.

Retornos

Um intervalo de tempo que corresponde a s.A time interval that corresponds to s.

Exceções

s tem um formato inválido.s has an invalid format.

s representa um número que é menor que MinValue ou maior que MaxValue.s represents a number that is less than MinValue or greater than MaxValue.

- ou --or- Pelo menos um dos componentes de dias, horas, minutos ou segundos está fora do intervalo válido.At least one of the days, hours, minutes, or seconds components is outside its valid range.

Exemplos

O exemplo a seguir usa Parse o método para converter cada elemento em uma matriz de cadeia TimeSpan de caracteres em um valor.The following example uses the Parse method to convert each element in a string array to a TimeSpan value. Ele altera a cultura do sistema atual para Croata-Croácia ("HR-HR") e inglês-Estados Unidos ("en-US") para ilustrar como a cultura do sistema atual afeta a operação de análise.It changes the current system culture to Croatian - Croatia ("hr-HR") and English - United States ("en-US") to illustrate how the current system culture affects the parsing operation.

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
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

Comentários

O s parâmetro contém uma especificação de intervalo de tempo no formato:The s parameter contains a time interval specification in the form:

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

Os elementos entre colchetes ([ e ]) são opcionais.Elements in square brackets ([ and ]) are optional. É necessária uma seleção da lista de alternativas entre chaves ({e}) e separadas por barras verticais (|).One selection from the list of alternatives enclosed in braces ({ and }) and separated by vertical bars (|) is required. A tabela a seguir descreve cada elemento.The following table describes each element.

ElementoElement DescriçãoDescription
wsws Espaço em branco opcional.Optional white space.
- Um sinal de subtração opcional, que indica um TimeSpan negativo.An optional minus sign, which indicates a negative TimeSpan.
dd Dias, variando de 0 a 10675199.Days, ranging from 0 to 10675199.
.. Um símbolo sensível à cultura que separa dias de horas.A culture-sensitive symbol that separates days from hours. O formato invariável usa um caractere de ponto final (".").The invariant format uses a period (".") character.
hhhh Horas, variando de 0 a 23.Hours, ranging from 0 to 23.
:: O símbolo separador de hora sensível à cultura.The culture-sensitive time separator symbol. O formato invariável usa um caractere de dois-pontos (":").The invariant format uses a colon (":") character.
mmmm Minutos, variando de 0 a 59.Minutes, ranging from 0 to 59.
ssss Segundos opcionais, variando de 0 a 59.Optional seconds, ranging from 0 to 59.
.. Um símbolo sensível à cultura que separa segundos de frações de um segundo.A culture-sensitive symbol that separates seconds from fractions of a second. O formato invariável usa um caractere de ponto final (".").The invariant format uses a period (".") character.
ffff Segundos fracionários opcionais, consistindo em um a sete dígitos decimais.Optional fractional seconds, consisting of one to seven decimal digits.

Se o s argumento não for apenas um valor de dia, ele deverá incluir um componente de horas e de minutos; outros componentes são opcionais.If the s argument is not a day value only, it must include an hours and a minutes component; other components are optional. Se estiverem presentes, os valores de cada componente de tempo deverão estar dentro de um intervalo especificado.If they are present, the values of each time component must fall within a specified range. Por exemplo, o valor de hh, o componente de horas, deve estar entre 0 e 23.For example, the value of hh, the hours component, must be between 0 and 23. Por isso, passar "23:00:00" para o Parse método retorna um intervalo de tempo de 23 horas.Because of this, passing "23:00:00" to the Parse method returns a time interval of 23 hours. Por outro lado, passar "24:00:00" retorna um intervalo de tempo de 24 dias.On the other hand, passing "24:00:00" returns a time interval of 24 days. Como "24" está fora do intervalo do componente de horas, ele é interpretado como o componente de dias.Because "24" is outside the range of the hours component, it is interpreted as the days component.

Os componentes do s devem especificar coletivamente um intervalo de tempo maior ou igual a TimeSpan.MinValue e menor ou igual a 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.

O Parse(String) método tenta analisar s usando cada um dos formatos específicos de cultura para a cultura atual.The Parse(String) method tries to parse s by using each of the culture-specific formats for the current culture.

Observações para os chamadoresNotes to callers

Quando um componente de intervalo de tempo na cadeia de caracteres a ser analisado contém mais de sete dígitos, as operações de análise no .NET Framework 3,5 e versões anteriores podem se comportar de forma diferente das operações de análise no .NET Framework 4 e versões posteriores.When a time interval component in the string to be parsed contains more than seven digits, parsing operations in the .NET Framework 3.5 and earlier versions may behave differently from parsing operations in the .NET Framework 4 and later versions. Em alguns casos, as operações de análise com êxito no .NET Framework 3,5 e nas versões anteriores podem falhar e lançar OverflowException um no .NET Framework 4 e posterior.In some cases, 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. Em outros casos, as operações de análise que lançam um FormatException no .NET Framework 3,5 e versões anteriores podem falhar e lançar um OverflowException no .NET Framework 4 e posterior.In other cases, parsing operations that throw a FormatException in the .NET Framework 3.5 and earlier versions may fail and throw an OverflowException in the .NET Framework 4 and later. O exemplo a seguir ilustra os dois cenários.The following example illustrates both scenarios.

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
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) Parse(ReadOnlySpan<Char>, IFormatProvider) Parse(ReadOnlySpan<Char>, IFormatProvider)

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

Parâmetros

Retornos

Parse(String, IFormatProvider) Parse(String, IFormatProvider) Parse(String, IFormatProvider) Parse(String, IFormatProvider)

Converte a representação de cadeia de caracteres de um intervalo de hora em seu equivalente de TimeSpan usando as informações de formato específicas da cultura especificadas.Converts the string representation of a time interval to its TimeSpan equivalent by using the specified culture-specific format information.

public:
 static TimeSpan Parse(System::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

Parâmetros

input
String String String String

Uma cadeia de caracteres que especifica o intervalo de tempo a ser convertido.A string that specifies the time interval to convert.

formatProvider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Um objeto que fornece informações de formatação específicas de cultura.An object that supplies culture-specific formatting information.

Retornos

Um intervalo de tempo que corresponde a input, como especificado por formatProvider.A time interval that corresponds to input, as specified by formatProvider.

Exceções

input tem um formato inválido.input has an invalid format.

input representa um número que é menor que MinValue ou maior que MaxValue.input represents a number that is less than MinValue or greater than MaxValue.

- ou --or- Pelo menos um dos componentes de dias, horas, minutos ou segundos em input está fora do intervalo válido.At least one of the days, hours, minutes, or seconds components in input is outside its valid range.

Exemplos

O exemplo a seguir define uma matriz CultureInfo de objetos e usa cada objeto em chamadas para o Parse(String, IFormatProvider) método para analisar os elementos em uma matriz de cadeia de caracteres.The following example defines an array of CultureInfo objects, and uses each object in calls to the Parse(String, IFormatProvider) method to parse the elements in a string array. O exemplo ilustra como as convenções de uma cultura específica influenciam a operação de formatação.The example illustrates how the conventions of a specific culture influence the formatting operation.

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
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

Comentários

O input parâmetro contém uma especificação de intervalo de tempo no formato:The input parameter contains a time interval specification in the form:

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

Os elementos entre colchetes ([e]) são opcionais; é necessária uma seleção da lista de alternativas entre chaves ({e}) e separadas por barras verticais (|).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. A tabela a seguir descreve cada elemento.The following table describes each element.

ElementoElement DescriçãoDescription
wsws Espaço em branco opcional.Optional white space.
- Um sinal de subtração opcional, que indica um TimeSpan negativo.An optional minus sign, which indicates a negative TimeSpan.
dd Dias, variando de 0 a 10675199.Days, ranging from 0 to 10675199.
.. Um símbolo sensível à cultura que separa dias de horas.A culture-sensitive symbol that separates days from hours. O valor padrão é um caractere de ponto (".").The default value is a period (".") character.
hhhh Horas, variando de 0 a 23.Hours, ranging from 0 to 23.
:: O símbolo separador de hora sensível à cultura.The culture-sensitive time separator symbol.
mmmm Minutos, variando de 0 a 59.Minutes, ranging from 0 to 59.
ssss Segundos opcionais, variando de 0 a 59.Optional seconds, ranging from 0 to 59.
.. Um símbolo sensível à cultura que separa segundos de frações de um segundo.A culture-sensitive symbol that separates seconds from fractions of a second. O valor padrão é um caractere de ponto (".").The default value is a period (".") character.
ffff Segundos fracionários opcionais, consistindo em um a sete dígitos decimais.Optional fractional seconds, consisting of one to seven decimal digits.

Se o input argumento não for apenas um valor de dia, ele deverá incluir um componente de horas e de minutos; outros componentes são opcionais.If the input argument is not a day value only, it must include an hours and a minutes component; other components are optional. Se estiverem presentes, os valores de cada componente de tempo deverão estar dentro de um intervalo especificado.If they are present, the values of each time component must fall within a specified range. Por exemplo, o valor de hh, o componente de horas, deve estar entre 0 e 23.For example, the value of hh, the hours component, must be between 0 and 23. Por isso, passar "23:00:00" para o Parse método retorna um intervalo de tempo de 23 horas.Because of this, passing "23:00:00" to the Parse method returns a time interval of 23 hours. Por outro lado, passar "24:00:00" retorna um intervalo de tempo de 24 dias.On the other hand, passing "24:00:00" returns a time interval of 24 days. Como "24" está fora do intervalo do componente de horas, ele é interpretado como o componente de dias.Because "24" is outside the range of the hours component, it is interpreted as the days component.

Os componentes do input devem especificar coletivamente um intervalo de tempo maior ou igual a TimeSpan.MinValue e menor ou igual a 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.

O Parse(String) método tenta analisar input usando cada um dos formatos específicos de cultura para a cultura especificada por formatProvider.The Parse(String) method tries to parse input by using each of the culture-specific formats for the culture specified by formatProvider.

O formatProvider parâmetro é uma IFormatProvider implementação que fornece informações específicas de cultura sobre o formato da cadeia de caracteres retornada.The formatProvider parameter is an IFormatProvider implementation that provides culture-specific information about the format of the returned string. O parâmetro formatProvider pode ser um dos seguintes:The formatProvider parameter can be any of the following:

Caso formatProvider seja null, o objeto DateTimeFormatInfo que está associado à cultura atual é usado.If formatProvider is null, the DateTimeFormatInfo object that is associated with the current culture is used.

Observações para os chamadoresNotes to callers

Quando um componente de intervalo de tempo na cadeia de caracteres a ser analisado contém mais de sete dígitos, as operações de análise no .NET Framework 3,5 e versões anteriores podem se comportar de forma diferente das operações de análise no .NET Framework 4 e versões posteriores.When a time interval component in the string to be parsed contains more than seven digits, parsing operations in the .NET Framework 3.5 and earlier versions may behave differently from parsing operations in the .NET Framework 4 and later versions. Em alguns casos, as operações de análise com êxito no .NET Framework 3,5 e nas versões anteriores podem falhar e lançar OverflowException um no .NET Framework 4 e posterior.In some cases, 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. Em outros casos, as operações de análise que lançam um FormatException no .NET Framework 3,5 e versões anteriores podem falhar e lançar um OverflowException no .NET Framework 4 e posterior.In other cases, parsing operations that throw a FormatException in the .NET Framework 3.5 and earlier versions may fail and throw an OverflowException in the .NET Framework 4 and later. O exemplo a seguir ilustra os dois cenários.The following example illustrates both scenarios.

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
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

Aplica-se a