Esta documentación está archivada y no tiene mantenimiento.

TimeSpan.FromHours (Método)

Actualización: noviembre 2007

Devuelve un TimeSpan que representa un número de horas especificado cuya precisión se aproximada al milisegundo más cercano.

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

public static TimeSpan FromHours(
	double value
)
public static TimeSpan FromHours(
	double value
)
public static function FromHours(
	value : double
) : TimeSpan

Parámetros

value
Tipo: System.Double
Número de horas con una precisión aproximada al milisegundo más cercano.

Valor devuelto

Tipo: System.TimeSpan
TimeSpan que representa value.

ExcepciónCondición
OverflowException

value es menor que MinValue o mayor que MaxValue.

-O bien-

El valor de value es Double.PositiveInfinity.

-O bien-

El valor de value es Double.NegativeInfinity.

ArgumentException

value es igual a Double.NaN.

El parámetro value se convierte en milisegundos, que a su vez se convierte en pasos, y ese número de pasos se utiliza para inicializar el nuevo objeto TimeSpan. Por lo tanto, value sólo se considerará preciso al milisegundo más cercano. Tenga en cuenta que, debido a la pérdida de precisión del tipo de datos Double, esta conversión puede producir OverflowException para valores cercanos pero en el intervalo de MinValue o MaxValue. Por ejemplo, esto produce OverflowException cuando se vuelva a intentar crear instancias de un objeto TimeSpan.

// The following throws an OverflowException at runtime
TimeSpan maxSpan = TimeSpan.FromHours(TimeSpan.MaxValue.TotalHours);


En el siguiente ejemplo de código se crean varios objetos TimeSpan mediante el método FromHours.

// Example of the TimeSpan.FromHours( double ) method.
using System;

class FromHoursDemo
{
    static void GenTimeSpanFromHours( double hours )
    {
        // Create a TimeSpan object and TimeSpan string from 
        // a number of hours.
        TimeSpan    interval = TimeSpan.FromHours( hours );
        string      timeInterval = interval.ToString( );

        // Pad the end of the TimeSpan string with spaces if it 
        // does not contain milliseconds.
        int pIndex = timeInterval.IndexOf( ':' );
        pIndex = timeInterval.IndexOf( '.', pIndex );
        if( pIndex < 0 )   timeInterval += "        ";

        Console.WriteLine( "{0,21}{1,26}", hours, timeInterval );
    } 

    static void Main( )
    {
        Console.WriteLine(
            "This example of TimeSpan.FromHours( double )\n" +
            "generates the following output.\n" );
        Console.WriteLine( "{0,21}{1,18}",
            "FromHours", "TimeSpan" );
        Console.WriteLine( "{0,21}{1,18}", 
            "---------", "--------" );

        GenTimeSpanFromHours( 0.0000002 );
        GenTimeSpanFromHours( 0.0000003 );
        GenTimeSpanFromHours( 0.0012345 );
        GenTimeSpanFromHours( 12.3456789 );
        GenTimeSpanFromHours( 123456.7898765 );
        GenTimeSpanFromHours( 0.0002777 );
        GenTimeSpanFromHours( 0.0166666 );
        GenTimeSpanFromHours( 1 );
        GenTimeSpanFromHours( 24 );
        GenTimeSpanFromHours( 500.3389445 );
    } 
} 

/*
This example of TimeSpan.FromHours( double )
generates the following output.

            FromHours          TimeSpan
            ---------          --------
                2E-07          00:00:00.0010000
                3E-07          00:00:00.0010000
            0.0012345          00:00:04.4440000
           12.3456789          12:20:44.4440000
       123456.7898765     5144.00:47:23.5550000
            0.0002777          00:00:01
            0.0166666          00:01:00
                    1          01:00:00
                   24        1.00:00:00
          500.3389445       20.20:20:20.2000000
*/ 


// Example of the TimeSpan.FromHours( double ) method.
import System.*;

class FromHoursDemo
{
    static void GenTimeSpanFromHours(double hours)
    {
        // Create a TimeSpan object and TimeSpan string from 
        // a number of hours.
        TimeSpan interval = TimeSpan.FromHours(hours);
        String timeInterval = interval.ToString();

        // Pad the end of the TimeSpan string with spaces if it 
        // does not contain milliseconds.
        int pIndex = timeInterval.IndexOf(':');
        pIndex = timeInterval.IndexOf('.', pIndex);
        if (pIndex < 0) {
            timeInterval += "        ";
        }

        Console.WriteLine("{0,21}{1,26}", new Object[] { (System.Double)hours,
                timeInterval });
    } //GenTimeSpanFromHours

    public static void main(String[] args)
    {
        Console.WriteLine(("This example of TimeSpan.FromHours( double )\n" 
            + "generates the following output.\n"));
        Console.WriteLine("{0,21}{1,18}", "FromHours", "TimeSpan");
        Console.WriteLine("{0,21}{1,18}", "---------", "--------");
        GenTimeSpanFromHours(2E-07);
        GenTimeSpanFromHours(3E-07);
        GenTimeSpanFromHours(0.0012345);
        GenTimeSpanFromHours(12.3456789);
        GenTimeSpanFromHours(123456.7898765);
        GenTimeSpanFromHours(0.0002777);
        GenTimeSpanFromHours(0.0166666);
        GenTimeSpanFromHours(1);
        GenTimeSpanFromHours(24);
        GenTimeSpanFromHours(500.3389445);
    } //main
} //FromHoursDemo

/*
This example of TimeSpan.FromHours( double )
generates the following output.

            FromHours          TimeSpan
            ---------          --------
                2E-07          00:00:00.0010000
                3E-07          00:00:00.0010000
            0.0012345          00:00:04.4440000
           12.3456789          12:20:44.4440000
       123456.7898765     5144.00:47:23.5550000
            0.0002777          00:00:01
            0.0166666          00:01:00
                    1          01:00:00
                   24        1.00:00:00
          500.3389445       20.20:20:20.2000000
*/


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC, Xbox 360

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

.NET Framework

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

.NET Compact Framework

Compatible con: 3.5, 2.0, 1.0

XNA Framework

Compatible con: 2.0, 1.0
Mostrar: