Para ver el artículo en inglés, active la casilla Inglés. También puede ver el texto en inglés en una ventana emergente si pasa el puntero del mouse por el texto.
Traducción
Inglés
Esta documentación está archivada y no tiene mantenimiento.

TimeSpan (Estructura)

Representa un intervalo de tiempo.

Espacio de nombres:  System
Ensamblado:  mscorlib (en mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public struct TimeSpan : IComparable, IComparable<TimeSpan>, 
	IEquatable<TimeSpan>, IFormattable

El tipo TimeSpan expone los siguientes miembros.

  NombreDescripción
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTimeSpan(Int64)Inicializa un nuevo objeto TimeSpan en el número de pasos (ticks) especificado.
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTimeSpan(Int32, Int32, Int32)Inicializa un nuevo objeto TimeSpan en el número de horas, minutos y segundos especificado.
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTimeSpan(Int32, Int32, Int32, Int32)Inicializa un nuevo objeto TimeSpan en el número de días, horas, minutos y segundos especificado.
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTimeSpan(Int32, Int32, Int32, Int32, Int32)Inicializa un nuevo objeto TimeSpan en el número de días, horas, minutos, segundos y milisegundos especificado.
Arriba

  NombreDescripción
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifDaysObtiene el componente correspondiente a los días del intervalo de tiempo representado por estructura TimeSpan actual.
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifHoursObtiene el componente correspondiente a las horas del intervalo de tiempo representado por estructura TimeSpan actual.
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifMillisecondsObtiene el componente correspondiente a los milisegundos del intervalo de tiempo representado por estructura TimeSpan actual.
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifMinutesObtiene el componente correspondiente a los minutos del intervalo de tiempo representado por estructura TimeSpan actual.
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifSecondsObtiene el componente correspondiente a los segundos del intervalo de tiempo representado por estructura TimeSpan actual.
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTicks Obtiene el número de pasos que representan el valor de la estructura TimeSpan actual.
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTotalDaysObtiene el valor de la estructura TimeSpan actual expresado en días completos y fracciones de días.
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTotalHoursObtiene el valor de la estructura TimeSpan actual expresado en horas completas y fracciones de horas.
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTotalMillisecondsObtiene el valor de la estructura TimeSpan actual expresado en milisegundos completos y fracciones de milisegundos.
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTotalMinutesObtiene el valor de la estructura TimeSpan actual expresado en minutos completos y fracciones de minutos.
Propiedad públicaCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTotalSecondsObtiene el valor de la estructura TimeSpan actual expresado en segundos completos y fracciones de segundos.
Arriba

  NombreDescripción
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifAddDevuelve un nuevo objeto TimeSpan cuyo valor es la suma del objeto TimeSpan especificado y esta instancia.
Método públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifCompareCompara dos valores TimeSpan y devuelve un entero que indica si el primer valor es menor, igual o mayor que el segundo valor.
Método públicoCompatible con XNA FrameworkCompareTo(Object)Compara esta instancia con un objeto especificado y devuelve un entero que indica si la instancia es más corta, igual o más larga que el objeto especificado.
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifCompareTo(TimeSpan)Compara esta instancia con un objeto TimeSpan especificado y devuelve un entero que indica si la instancia es más corta, igual o más larga que el objeto TimeSpan.
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifDurationDevuelve un nuevo objeto TimeSpan cuyo valor es el valor absoluto del objeto TimeSpan actual.
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifEquals(Object)Devuelve un valor que indica si la instancia equivale a un objeto especificado. (Invalida a ValueType.Equals(Object)).
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifEquals(TimeSpan)Devuelve un valor que indica si esta instancia equivale a un objeto TimeSpan especificado.
Método públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifEquals(TimeSpan, TimeSpan)Devuelve un valor que indica si dos instancias de TimeSpan especificadas son iguales.
Método protegidoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por el recolector de basura. (Se hereda de Object).
Método públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifFromDaysDevuelve un TimeSpan que representa un número de días especificado con una precisión aproximada al milisegundo más cercano.
Método públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifFromHoursDevuelve un TimeSpan que representa un número de horas especificado cuya precisión se aproximada al milisegundo más cercano.
Método públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifFromMillisecondsDevuelve un TimeSpan que representa un número de milisegundos especificado.
Método públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifFromMinutesDevuelve un TimeSpan que representa un número de minutos especificado con una precisión aproximada al milisegundo más cercano.
Método públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifFromSecondsDevuelve un TimeSpan que representa un número de segundos especificado con una precisión aproximada al milisegundo más cercano.
Método públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifFromTicksDevuelve un TimeSpan que representa un tiempo especificado en unidades de paso.
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifGetHashCodeDevuelve un código hash para esta instancia. (Invalida a ValueType.GetHashCode()).
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método protegidoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifMemberwiseClone Crea una copia superficial del Object actual. (Se hereda de Object).
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifNegateDevuelve un objeto TimeSpan nuevo cuyo valor es el valor negado de esta instancia.
Método públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifParse(String)Convierte la representación de cadena de un intervalo de tiempo en su equivalente de TimeSpan.
Método públicoMiembro estáticoParse(String, IFormatProvider)Convierte la representación de cadena de un intervalo de tiempo en su equivalente de TimeSpan, utilizando la información de formato específica de la referencia cultural especificada.
Método públicoMiembro estáticoParseExact(String, String, IFormatProvider)Convierte la representación de cadena de un intervalo de tiempo en su equivalente de TimeSpan, utilizando el formato especificado así como la información de formato específica de la referencia cultural especificada. El formato de la representación de cadena debe coincidir exactamente con el formato especificado.
Método públicoMiembro estáticoParseExact(String, String[], IFormatProvider)Convierte la representación de cadena de un intervalo de tiempo en su equivalente de TimeSpan, utilizando la matriz de cadenas de formato y la información de formato específica de la referencia cultural especificadas. El formato de la representación de cadena debe coincidir exactamente con uno de los formatos especificados.
Método públicoMiembro estáticoParseExact(String, String, IFormatProvider, TimeSpanStyles)Convierte la representación de cadena de un intervalo de tiempo en su equivalente de TimeSpan, utilizando el formato, los estilos y la información de formato específica de la referencia cultural especificados. El formato de la representación de cadena debe coincidir exactamente con el formato especificado.
Método públicoMiembro estáticoParseExact(String, String[], IFormatProvider, TimeSpanStyles)Convierte la representación de cadena de un intervalo de tiempo en su equivalente de TimeSpan, utilizando los formatos, los estilos y la información de formato específica de la referencia cultural especificados. El formato de la representación de cadena debe coincidir exactamente con uno de los formatos especificados.
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifSubtractDevuelve un nuevo objeto TimeSpan cuyo valor es la diferencia entre el objeto TimeSpan especificado y esta instancia.
Método públicoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifToString()Convierte el valor del objeto TimeSpan actual en su representación de cadena equivalente. (Invalida a ValueType.ToString()).
Método públicoToString(String)Convierte el valor del objeto TimeSpan actual en su representación de cadena equivalente utilizando el formato especificado.
Método públicoToString(String, IFormatProvider)Convierte el valor del objeto TimeSpan actual en su representación de cadena equivalente usando el formato especificado y la información de formato específica de la referencia cultural indicada.
Método públicoMiembro estático269ew577.PortableClassLibrary(es-es,VS.100).gifTryParse(String, TimeSpan)Convierte la representación de cadena de un intervalo de tiempo en su equivalente de TimeSpan y devuelve un valor que indica si la conversión se realizó correctamente.
Método públicoMiembro estáticoTryParse(String, IFormatProvider, TimeSpan)Convierte la representación de cadena de un intervalo de tiempo en su equivalente de TimeSpan utilizando la información de formato específica de la referencia cultural, y devuelve un valor que indica si la conversión se realizó correctamente.
Método públicoMiembro estáticoTryParseExact(String, String, IFormatProvider, TimeSpan)Convierte la representación de cadena de un intervalo de tiempo en su equivalente de TimeSpan utilizando el formato y la información de formato específica de la referencia cultural especificados, y devuelve un valor que indica si la conversión se realizó correctamente. El formato de la representación de cadena debe coincidir exactamente con el formato especificado.
Método públicoMiembro estáticoTryParseExact(String, String[], IFormatProvider, TimeSpan)Convierte la representación de cadena especificada de un intervalo de tiempo en su equivalente de TimeSpan utilizando los formatos y la información de formato específica de la referencia cultural especificados, y devuelve un valor que indica si la conversión se realizó correctamente. El formato de la representación de cadena debe coincidir exactamente con uno de los formatos especificados.
Método públicoMiembro estáticoTryParseExact(String, String, IFormatProvider, TimeSpanStyles, TimeSpan)Convierte la representación de cadena de un intervalo de tiempo en su equivalente de TimeSpan utilizando el formato, los estilos y la información de formato específica de la referencia cultural especificados, y devuelve un valor que indica si la conversión se realizó correctamente. El formato de la representación de cadena debe coincidir exactamente con el formato especificado.
Método públicoMiembro estáticoTryParseExact(String, String[], IFormatProvider, TimeSpanStyles, TimeSpan)Convierte la representación de cadena especificada de un intervalo de tiempo en su equivalente de TimeSpan utilizando los formatos, los estilos y la información de formato específica de la referencia cultural especificados, y devuelve un valor que indica si la conversión se realizó correctamente. El formato de la representación de cadena debe coincidir exactamente con uno de los formatos especificados.
Arriba

  NombreDescripción
Operador públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifAdditionAgrega dos instancias de TimeSpan especificadas.
Operador públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifEqualityIndica si dos instancias de TimeSpan son iguales.
Operador públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifGreaterThanIndica si un TimeSpan especificado es mayor que otro TimeSpan especificado.
Operador públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifGreaterThanOrEqualIndica si un TimeSpan especificado es mayor o igual que otro TimeSpan especificado.
Operador públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifInequalityIndica si dos instancias de TimeSpan no son iguales.
Operador públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifLessThanIndica si un TimeSpan especificado es menor que otro TimeSpan especificado.
Operador públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifLessThanOrEqualIndica si un TimeSpan especificado es menor o igual que otro TimeSpan especificado.
Operador públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifSubtractionResta un TimeSpan especificado de otro TimeSpan especificado.
Operador públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifUnaryNegationDevuelve un TimeSpan cuyo valor es el valor negado de la instancia especificada.
Operador públicoMiembro estático269ew577.PortableClassLibrary(es-es,VS.100).gifUnaryPlusDevuelve la instancia especificada de TimeSpan.
Arriba

  NombreDescripción
Campo públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifMaxValueRepresenta el valor máximo de TimeSpan. Este campo es de sólo lectura.
Campo públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifMinValueRepresenta el valor mínimo de TimeSpan. Este campo es de sólo lectura.
Campo públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTicksPerDayRepresenta el número de pasos en 1 día. Este campo es constante.
Campo públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTicksPerHourRepresenta el número de pasos en 1 hora. Este campo es constante.
Campo públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTicksPerMillisecondRepresenta el número de pasos en 1 milisegundo. Este campo es constante.
Campo públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTicksPerMinuteRepresenta el número de pasos en 1 minuto. Este campo es constante.
Campo públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifTicksPerSecondRepresenta el número de pasos en 1 segundo.
Campo públicoMiembro estáticoCompatible con XNA Framework269ew577.PortableClassLibrary(es-es,VS.100).gifZeroRepresenta el valor de TimeSpan cero. Este campo es de sólo lectura.
Arriba

Un objeto TimeSpan representa un intervalo de tiempo (duración de tiempo o tiempo transcurrido) que se mide como un número positivo o negativo de días, horas, minutos, segundos y fracciones de segundo. La estructura TimeSpan también se puede utilizar para representar la hora del día, pero solo si la hora no está relacionada con una fecha determinada. De los contrario, la estructura DateTime o DateTimeOffset debe utilizarse en su lugar. (Para obtener más información sobre el uso de la estructura TimeSpan para reflejar la hora del día, vea Elegir entre DateTime, DateTimeOffset y TimeZoneInfo.)

La unidad de tiempo más grande que usa la estructura TimeSpan para medir la duración es un día. Los intervalos de tiempo se miden en días por cuestión de coherencia, ya que el número de días en unidades de tiempo mayores, como meses y años, varía.

El valor de un objeto TimeSpan es el número de pasos que equivale al intervalo de tiempo representado. Un paso es igual a 100 nanosegundos o una diezmillonésima parte de un segundo. El valor de un objeto TimeSpan puede estar comprendido entre TimeSpan.MinValue y TimeSpan.MaxValue.

Crear instancias de un valor TimeSpan

Puede crear instancias de un valor TimeSpan de varias formas:

  • Mediante una llamada a su constructor predeterminado implícito. Esto crea un objeto cuyo valor es TimeSpan.Zero, como se muestra en el ejemplo siguiente.

    
    TimeSpan interval = new TimeSpan();
    Console.WriteLine(interval.Equals(TimeSpan.Zero));    // Displays "True".
    
    
    
  • Llamando a uno de sus constructores explícitos. En el siguiente ejemplo se inicializa un valor TimeSpan para un número de horas, minutos y segundos especificado.

    
    TimeSpan interval = new TimeSpan(2, 14, 18);
    Console.WriteLine(interval.ToString());              // Displays "02:14:18".
    
    
    
  • Llamando a un método o realizando una operación que devuelve un valor TimeSpan. Por ejemplo, puede crear instancias de un valor TimeSpan que representa el intervalo entre dos valores de fecha y hora, como las siguientes presentaciones del ejemplo.

    
    DateTime departure = new DateTime(2010, 6, 12, 18, 32, 0);
    DateTime arrival = new DateTime(2010, 6, 13, 22, 47, 0);
    TimeSpan travelTime = arrival - departure;  
    Console.WriteLine("{0} - {1} = {2}", arrival, departure, travelTime);      
    // The example displays the following output:
    //       6/13/2010 10:47:00 PM - 6/12/2010 6:32:00 PM = 1.04:15:00
    
    
    

    Los valores TimeSpan se devuelven mediante operadores aritméticos y métodos de las estructuras DateTime, DateTimeOffset y TimeSpan.

  • Mediante el análisis de la representación de cadena de un valor TimeSpan. Puede usar los métodos TryParse y Parse para convertir cadenas que contienen intervalos de tiempo para los valores TimeSpan. En el siguiente ejemplo, se utiliza el método Parse para convertir una matriz de cadenas en valores TimeSpan.

    
    string[] values = { "12", "31.", "5.8:32:16", "12:12:15.95", ".12"};
    foreach (string value in values)
    {
       try {
          TimeSpan ts = TimeSpan.Parse(value);
          Console.WriteLine("'{0}' --> {1}", value, ts);
       }
       catch (FormatException) {
          Console.WriteLine("Unable to parse '{0}'", value);
       }
       catch (OverflowException) {
          Console.WriteLine("'{0}' is outside the range of a TimeSpan.", value);
       }   
    }
    // The example displays the following output:
    //       '12' --> 12.00:00:00
    //       Unable to parse '31.'
    //       '5.8:32:16' --> 5.08:32:16
    //       '12:12:15.95' --> 12:12:15.9500000
    //       Unable to parse '.12'  
    
    
    

    Además, puede definir el formato preciso de la cadena de entrada que se va a analizar y convertir a un valor TimeSpan llamando al método TryParseExact u ParseExact.

Realizar operaciones en valores TimeSpan

Puede agregar y restar duraciones de tiempo usando los operadores Subtraction y Addition o llamando a los métodos Subtract y Add. También puede comparar dos duraciones de tiempo llamando a los métodos Compare, CompareTo y Equals. La clase TimeSpan también incluye los métodos Negate y Duration que convierten intervalos de tiempo en valores positivos y negativos,

El intervalo de valores TimeSpan va de MinValue a MaxValue.

Dar formato a un valor TimeSpan

Un valor TimeSpan se puede representar como [-]d.hh:mm:ss.ff, donde el signo menos opcional indica un intervalo de tiempo negativo, el componente d son los días, hh son las horas en formato de 24 horas, mm son los minutos, ss son los segundos y ff son fracciones de segundo. Es decir, un intervalo de tiempo está formado por un número positivo o negativo de días completos, un número de días con períodos de tiempo o sólo períodos de tiempo.

Comenzando con .NET Framework versión 4, la estructura TimeSpan admite el formato dependiente de la referencia cultural a través de las sobrecargas de su método ToString, que convierte un valor TimeSpan en su representación de cadena. El método TimeSpan.ToString() predeterminado devuelve un intervalo de tiempo usando un formato invariable que es idéntico a su valor devuelto en versiones anteriores de .NET Framework. La sobrecarga TimeSpan.ToString(String) permite especificar una cadena con formato que define la representación de cadena del intervalo de tiempo. La sobrecarga TimeSpan.ToString(String, IFormatProvider) permite especificar una cadena de formato y la referencia cultural cuyas convenciones de formato se usan para crear la representación de cadena del intervalo de tiempo. TimeSpan admite cadenas con formato personalizado y estándar. (Para obtener más información, vea Cadenas de formato TimeSpan estándar y Cadenas de formato TimeSpan personalizado). Sin embargo, solo las cadenas de formato estándar son dependientes de la referencia cultural.

Restaurar el formato de TimeSpan heredado

En algunos casos, el código que da formato correctamente a los valores TimeSpan en .NET Framework 3.5 y versiones anteriores da error en .NET Framework 4. Esto es muy común en código que llama a un método de formato compuesto para dar formato a un valor TimeSpan con una cadena de formato. El siguiente ejemplo da formato correctamente a un valor TimeSpan en .NET Framework 3.5 y versiones anteriores, pero produce una excepción en .NET Framework 4 y versiones posteriores. Observe que intenta dar formato a un valor TimeSpan usando un especificador de formato no compatible, que se omite en .NET Framework 3.5 y en versiones anteriores.


TimeSpan interval = new TimeSpan(12, 30, 45);
string output;
try {
   output = String.Format("{0:r}", interval);
}
catch (FormatException) {
   output = "Invalid Format";
}
Console.WriteLine(output);
// Output from .NET Framework 3.5 and earlier versions:
//       12:30:45
// Output from .NET Framework 4:
//       Invalid Format


Si no puede modificar el código, puede restaurar el formato heredado de valores TimeSpan de una de las siguientes maneras:

  • Creando un archivo de configuración que contiene el elemento <TimeSpan_LegacyFormatMode>. Al establecer el atributo enabled de este elemento en true, se restaura el formato TimeSpan heredado según la aplicación.

  • Estableciendo el modificador de compatibilidad de "NetFx40_TimeSpanLegacyFormatMode" al crear un dominio de aplicación. Esto habilita el formato TimeSpan heredado según dominio de aplicación. En el ejemplo siguiente se crea un dominio de aplicación que usa el formato TimeSpan heredado.

    
    using System;
    
    public class Example
    {
       public static void Main()
       {
          AppDomainSetup appSetup = new AppDomainSetup();
          appSetup.SetCompatibilitySwitches( new string[] { "NetFx40_TimeSpanLegacyFormatMode" } );
          AppDomain legacyDomain = AppDomain.CreateDomain("legacyDomain", 
                                                          null, appSetup);
          legacyDomain.ExecuteAssembly("ShowTimeSpan.exe");
       }
    }
    
    
    

    Cuando el siguiente código se ejecuta en el nuevo dominio de aplicación, revierte al comportamiento de formato TimeSpan heredado.

    
    using System;
    
    public class Example
    {
       public static void Main()
       {
          TimeSpan interval = DateTime.Now - DateTime.Now.Date;
          string msg = String.Format("Elapsed Time Today: {0:d} hours.",
                                     interval);
          Console.WriteLine(msg);
       }
    }
    // The example displays the following output:
    //       Elapsed Time Today: 01:40:52.2524662 hours.
    
    
    

En el siguiente ejemplo se crean instancias de un objeto TimeSpan que representa la diferencia entre dos fechas. A continuación, muestra las propiedades del objeto TimeSpan.


// Define two dates.
DateTime date1 = new DateTime(2010, 1, 1, 8, 0, 15);
DateTime date2 = new DateTime(2010, 8, 18, 13, 30, 30);
// Calculate the interval between the two dates.
TimeSpan interval = date2 - date1;
Console.WriteLine("{0} - {1} = {2}", date2, date1, interval.ToString());
// Display individual properties of the resulting TimeSpan object.
Console.WriteLine("   {0,-35} {1,20}", "Value of Days Component:", interval.Days);
Console.WriteLine("   {0,-35} {1,20}", "Total Number of Days:", interval.TotalDays);
Console.WriteLine("   {0,-35} {1,20}", "Value of Hours Component:", interval.Hours);
Console.WriteLine("   {0,-35} {1,20}", "Total Number of Hours:", interval.TotalHours);
Console.WriteLine("   {0,-35} {1,20}", "Value of Minutes Component:", interval.Minutes);
Console.WriteLine("   {0,-35} {1,20}", "Total Number of Minutes:", interval.TotalMinutes);
Console.WriteLine("   {0,-35} {1,20:N0}", "Value of Seconds Component:", interval.Seconds);
Console.WriteLine("   {0,-35} {1,20:N0}", "Total Number of Seconds:", interval.TotalSeconds);
Console.WriteLine("   {0,-35} {1,20:N0}", "Value of Milliseconds Component:", interval.Milliseconds);
Console.WriteLine("   {0,-35} {1,20:N0}", "Total Number of Milliseconds:", interval.TotalMilliseconds);
Console.WriteLine("   {0,-35} {1,20:N0}", "Ticks:", interval.Ticks);
// the example displays the following output:
//       8/18/2010 1:30:30 PM - 1/1/2010 8:00:15 AM = 229.05:30:15
//          Value of Days Component:                             229
//          Total Number of Days:                   229.229340277778
//          Value of Hours Component:                              5
//          Total Number of Hours:                  5501.50416666667
//          Value of Minutes Component:                           30
//          Total Number of Minutes:                       330090.25
//          Value of Seconds Component:                           15
//          Total Number of Seconds:                      19,805,415
//          Value of Milliseconds Component:                       0
//          Total Number of Milliseconds:             19,805,415,000
//          Ticks:                               198,054,150,000,000


.NET Framework

Compatible con: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Compatible con:

Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
Mostrar: