次の方法で共有


TimeSpan.FromDays メソッド

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

Public Shared Function FromDays( _
   ByVal value As Double _) As TimeSpan
[C#]
public static TimeSpan FromDays(doublevalue);
[C++]
public: static TimeSpan FromDays(doublevalue);
[JScript]
public static function FromDays(
   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++] FromDays メソッドを使用して、複数の TimeSpan オブジェクトを作成するコード例を次に示します。

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

Module FromDaysDemo

    Sub GenTimeSpanFromDays( days As Double )

        ' Create a TimeSpan object and TimeSpan string from 
        ' a number of days.
        Dim interval As TimeSpan = _
            TimeSpan.FromDays( days )
        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}", days, timeInterval )
    End Sub 

    Sub Main( )

        Console.WriteLine( "This example of " & _
            "TimeSpan.FromDays( Double )" & _
            vbCrLf & "generates the following output." & vbCrLf )
        Console.WriteLine( "{0,21}{1,18}", _
            "FromDays", "TimeSpan" )    
        Console.WriteLine( "{0,21}{1,18}", _
            "--------", "--------" )    

        GenTimeSpanFromDays( 0.000000006 )
        GenTimeSpanFromDays( 0.000000017 )
        GenTimeSpanFromDays( 0.000123456 )
        GenTimeSpanFromDays( 1.234567898 )
        GenTimeSpanFromDays( 12345.678987654 )
        GenTimeSpanFromDays( 0.000011574 )
        GenTimeSpanFromDays( 0.000694444 )
        GenTimeSpanFromDays( 0.041666666 )
        GenTimeSpanFromDays( 1 )
        GenTimeSpanFromDays( 20.84745602 )
    End Sub 
End Module 

' This example of TimeSpan.FromDays( Double )
' generates the following output.
' 
'              FromDays          TimeSpan
'              --------          --------
'                 6E-09          00:00:00.0010000
'               1.7E-08          00:00:00.0010000
'           0.000123456          00:00:10.6670000
'           1.234567898        1.05:37:46.6660000
'       12345.678987654    12345.16:17:44.5330000
'            1.1574E-05          00:00:01
'           0.000694444          00:01:00
'           0.041666666          01:00:00
'                     1        1.00:00:00
'           20.84745602       20.20:20:20.2000000

[C#] 
// Example of the TimeSpan.FromDays( double ) method.
using System;

class FromDaysDemo
{
    static void GenTimeSpanFromDays( double days )
    {
        // Create a TimeSpan object and TimeSpan string from 
        // a number of days.
        TimeSpan interval = TimeSpan.FromDays( days );
        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}", days, timeInterval );
    } 

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

        GenTimeSpanFromDays( 0.000000006 );
        GenTimeSpanFromDays( 0.000000017 );
        GenTimeSpanFromDays( 0.000123456 );
        GenTimeSpanFromDays( 1.234567898 );
        GenTimeSpanFromDays( 12345.678987654 );
        GenTimeSpanFromDays( 0.000011574 );
        GenTimeSpanFromDays( 0.000694444 );
        GenTimeSpanFromDays( 0.041666666 );
        GenTimeSpanFromDays( 1 );
        GenTimeSpanFromDays( 20.84745602 );
    } 
} 

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

             FromDays          TimeSpan
             --------          --------
                6E-09          00:00:00.0010000
              1.7E-08          00:00:00.0010000
          0.000123456          00:00:10.6670000
          1.234567898        1.05:37:46.6660000
      12345.678987654    12345.16:17:44.5330000
           1.1574E-05          00:00:01
          0.000694444          00:01:00
          0.041666666          01:00:00
                    1        1.00:00:00
          20.84745602       20.20:20:20.2000000
*/ 

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

void GenTimeSpanFromDays( double days )
{
    // Create a TimeSpan object and TimeSpan string from 
    // a number of days.
    TimeSpan    interval = TimeSpan::FromDays( days );
    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( days ), 
        timeInterval );
} 

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

    GenTimeSpanFromDays( 0.000000006 );
    GenTimeSpanFromDays( 0.000000017 );
    GenTimeSpanFromDays( 0.000123456 );
    GenTimeSpanFromDays( 1.234567898 );
    GenTimeSpanFromDays( 12345.678987654 );
    GenTimeSpanFromDays( 0.000011574 );
    GenTimeSpanFromDays( 0.000694444 );
    GenTimeSpanFromDays( 0.041666666 );
    GenTimeSpanFromDays( 1 );
    GenTimeSpanFromDays( 20.84745602 );
} 

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

             FromDays          TimeSpan
             --------          --------
                6E-09          00:00:00.0010000
              1.7E-08          00:00:00.0010000
          0.000123456          00:00:10.6670000
          1.234567898        1.05:37:46.6660000
      12345.678987654    12345.16:17:44.5330000
           1.1574E-05          00:00:01
          0.000694444          00:01:00
          0.041666666          01:00:00
                    1        1.00:00:00
          20.84745602       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 | FromHours