Leer en inglés

Compartir a través de


TimeSpan.Parse Método

Definición

Convierte la representación de cadena de un intervalo de tiempo en su TimeSpan equivalente.

Sobrecargas

Parse(String, IFormatProvider)

Convierte la representación de cadena de un intervalo de tiempo en su TimeSpan equivalente mediante la información de formato específica de la referencia cultural especificada.

Parse(ReadOnlySpan<Char>, IFormatProvider)

Convierte la representación de intervalo de un intervalo en su TimeSpan equivalente mediante la información de formato específica de la referencia cultural especificada.

Parse(String)

Convierte la representación de cadena de un intervalo de tiempo en su TimeSpan equivalente.

Parse(String, IFormatProvider)

Source:
TimeSpan.cs
Source:
TimeSpan.cs
Source:
TimeSpan.cs

Convierte la representación de cadena de un intervalo de tiempo en su TimeSpan equivalente mediante la información de formato específica de la referencia cultural especificada.

C#
public static TimeSpan Parse (string input, IFormatProvider formatProvider);
C#
public static TimeSpan Parse (string input, IFormatProvider? formatProvider);

Parámetros

input
String

Cadena que especifica el intervalo de tiempo que se va a convertir.

formatProvider
IFormatProvider

Objeto que proporciona información de formato específica de la referencia cultural.

Devoluciones

Intervalo de tiempo que corresponde a input, tal como se especifica en formatProvider.

Implementaciones

Excepciones

input es null.

input tiene un formato no válido.

input representa un número menor que TimeSpan.MinValue o mayor que TimeSpan.MaxValue.

-o-

Al menos uno de los componentes de días, horas, minutos o segundos de input está fuera de su intervalo válido.

Ejemplos

En el ejemplo siguiente se define una matriz de objetos CultureInfo y se usa cada objeto en llamadas al método Parse(String, IFormatProvider) para analizar los elementos de una matriz de cadenas. En el ejemplo se muestra cómo las convenciones de una referencia cultural específica influyen en la operación de formato.

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

Comentarios

Este método intenta analizar input mediante cada uno de los formatos específicos de la referencia cultural para la referencia cultural especificada por formatProvider.

El parámetro formatProvider es una implementación de IFormatProvider que proporciona información específica de la referencia cultural sobre el formato de la cadena devuelta. El parámetro formatProvider puede ser cualquiera de los siguientes:

Si formatProvider es null, se usa el objeto DateTimeFormatInfo asociado a la referencia cultural actual.

Para obtener más información sobre esta API, consulte comentarios de api complementarias para System.TimeSpan.Parse.

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Parse(ReadOnlySpan<Char>, IFormatProvider)

Source:
TimeSpan.cs
Source:
TimeSpan.cs
Source:
TimeSpan.cs

Convierte la representación de intervalo de un intervalo en su TimeSpan equivalente mediante la información de formato específica de la referencia cultural especificada.

C#
public static TimeSpan Parse (ReadOnlySpan<char> input, IFormatProvider? formatProvider = default);
C#
public static TimeSpan Parse (ReadOnlySpan<char> input, IFormatProvider formatProvider = default);

Parámetros

input
ReadOnlySpan<Char>

Intervalo que contiene los caracteres que representan el intervalo de tiempo que se va a convertir.

formatProvider
IFormatProvider

Objeto que proporciona información de formato específica de la referencia cultural.

Devoluciones

Intervalo de tiempo que corresponde a input, tal como se especifica en formatProvider.

Implementaciones

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Standard 2.1

Parse(String)

Source:
TimeSpan.cs
Source:
TimeSpan.cs
Source:
TimeSpan.cs

Convierte la representación de cadena de un intervalo de tiempo en su TimeSpan equivalente.

C#
public static TimeSpan Parse (string s);

Parámetros

s
String

Cadena que especifica el intervalo de tiempo que se va a convertir.

Devoluciones

Intervalo de tiempo que corresponde a s.

Excepciones

s tiene un formato no válido.

s representa un número menor que TimeSpan.MinValue o mayor que TimeSpan.MaxValue.

-o-

Al menos uno de los componentes de días, horas, minutos o segundos está fuera de su intervalo válido.

Ejemplos

En el ejemplo siguiente se usa el método Parse para convertir cada elemento de una matriz de cadenas en un valor de TimeSpan. Cambia la referencia cultural actual del sistema a Croata - Croacia ("hr-HR") e Inglés - Estados Unidos ("en-US") para ilustrar cómo afecta la cultura del sistema actual a la operación de análisis.

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

Comentarios

Para obtener más información sobre esta API, consulte comentarios de api complementarias para TimeSpan.Parse.

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0