次の方法で共有


TimeSpan.FromHours メソッド

指定した時間数を表す TimeSpan を返します。時間数は、ミリ秒単位の精度で指定します。

Public Shared Function FromHours( _
   ByVal value As Double _) As TimeSpan
[C#]
public static TimeSpan FromHours(doublevalue);
[C++]
public: static TimeSpan FromHours(doublevalue);
[JScript]
public static function FromHours(
   value : double) : TimeSpan;

パラメータ

  • value
    ミリ秒単位の精度による時間数。

戻り値

value を表す TimeSpan

例外

例外の種類 条件
OverflowException valueMinValue より小さい値か、 MaxValue より大きい値です。
ArgumentException value と Double.NaN が等しい。

解説

value パラメータはミリ秒に変換されます。そのミリ秒がタイマ刻みに変換され、タイマ刻みの数を使用して新しい TimeSpan が初期化されます。したがって、value は、ミリ秒単位の精度であると見なされます。

value が Double.PositiveInfinity の場合は、 MaxValue が返されます。 valueDouble.NegativeInfinity の場合は、 MinValue が返されます。

使用例

[Visual Basic, C#, C++] FromHours メソッドを使用して、複数の TimeSpan オブジェクトを作成するコード例を次に示します。

 
' Example of the TimeSpan.FromHours( Double ) method.
Imports System
Imports Microsoft.VisualBasic

Module FromHoursDemo

    Sub GenTimeSpanFromHours( hours As Double )

        ' Create a TimeSpan object and TimeSpan string from 
        ' a number of hours.
        Dim interval As TimeSpan = _
            TimeSpan.FromHours( hours )
        Dim timeInterval As String = interval.ToString( )

        ' Pad the end of the TimeSpan string with spaces if it 
        ' does not contain milliseconds.
        Dim pIndex As Integer = timeInterval.IndexOf( ":"c )
        pIndex = timeInterval.IndexOf( "."c, pIndex )
        If pIndex < 0 Then  timeInterval &= "        "

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

    Sub Main( )

        Console.WriteLine( "This example of " & _
            "TimeSpan.FromHours( Double )" & _
            vbCrLf & "generates the following output." & vbCrLf )
        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 )
    End Sub 
End Module 

' 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

[C#] 
// 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
*/ 

[C++] 
// Example of the TimeSpan::FromHours( double ) method.
#using <mscorlib.dll>
using namespace System;

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 = String::Concat( timeInterval, S"        " );

    Console::WriteLine( S"{0,21}{1,26}", __box( hours ), 
        timeInterval );
} 

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

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

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard

参照

TimeSpan 構造体 | TimeSpan メンバ | System 名前空間 | Double | FromTicks | FromMilliseconds | FromSeconds | FromMinutes | FromDays