共用方式為


TimeSpan.FromDays 方法

定義

多載

FromDays(Double)

會傳回代表指定天數的 TimeSpan,其中規格精確到最接近毫秒。

FromDays(Int32)

TimeSpan 結構的新實例初始化為指定的天數。

FromDays(Int32, Int32, Int64, Int64, Int64, Int64)

TimeSpan 結構的新實例初始化為指定的天數、小時、分鐘、秒、毫秒和微秒數。

FromDays(Double)

來源:
TimeSpan.cs
來源:
TimeSpan.cs
來源:
TimeSpan.cs

會傳回代表指定天數的 TimeSpan,其中規格精確到最接近毫秒。

public:
 static TimeSpan FromDays(double value);
public static TimeSpan FromDays (double value);
static member FromDays : double -> TimeSpan
Public Shared Function FromDays (value As Double) As TimeSpan

參數

value
Double

數天,精確到最接近的毫秒。

傳回

物件,表示 value

例外狀況

value 小於 TimeSpan.MinValue 或大於 TimeSpan.MaxValue

-或-

value PositiveInfinity

-或-

value NegativeInfinity

value 等於 NaN

範例

下列範例會使用 FromDays 方法建立數個 TimeSpan 物件。

// Example of the TimeSpan::FromDays( double ) method.
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, "        " );

   Console::WriteLine( "{0,21}{1,26}", days, timeInterval );
}

int 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
*/
// 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
*/
// Example of the TimeSpan.FromDays( double ) method.
open System

let genTimeSpanFromDays days =
    // Create a TimeSpan object and TimeSpan string from 
    // a number of days.
    let interval = TimeSpan.FromDays days
    let timeInterval = string interval

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

    printfn $"{days,21}{timeInterval,26}"

printfn "This example of TimeSpan.FromDays( double )\ngenerates the following output.\n"
printfn "%21s%18s" "FromDays" "TimeSpan"
printfn "%21s%18s" "--------" "--------"

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
*)
' Example of the TimeSpan.FromDays( Double ) method.
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

備註

value 參數會轉換成毫秒,它會轉換成刻度,而該刻度數則用來初始化新的 TimeSpan。 因此,value 只會被視為精確到最接近的毫秒。 請注意,由於遺失 Double 數據類型的有效位數,此轉換可能會造成接近但仍在 MinValueMaxValue範圍內的值 OverflowException。 例如,這會導致下列嘗試具現化 TimeSpan 物件中的 OverflowException

// The following throws an OverflowException at runtime
TimeSpan maxSpan = TimeSpan.FromDays(TimeSpan.MaxValue.TotalDays);
// The following throws an OverflowException at runtime
let maxSpan = TimeSpan.FromDays TimeSpan.MaxValue.TotalDays
' The following throws an OverflowException at runtime
Dim maxSpan As TimeSpan = TimeSpan.FromDays(TimeSpan.MaxValue.TotalDays)

另請參閱

適用於

FromDays(Int32)

TimeSpan 結構的新實例初始化為指定的天數。

public:
 static TimeSpan FromDays(int days);
public static TimeSpan FromDays (int days);
static member FromDays : int -> TimeSpan
Public Shared Function FromDays (days As Integer) As TimeSpan

參數

days
Int32

天數。

傳回

傳回代表指定天數的 TimeSpan

例外狀況

參數會指定小於 MinValue 或大於 MaxValueTimeSpan

適用於

FromDays(Int32, Int32, Int64, Int64, Int64, Int64)

TimeSpan 結構的新實例初始化為指定的天數、小時、分鐘、秒、毫秒和微秒數。

public static TimeSpan FromDays (int days, int hours = 0, long minutes = 0, long seconds = 0, long milliseconds = 0, long microseconds = 0);
static member FromDays : int * int * int64 * int64 * int64 * int64 -> TimeSpan
Public Shared Function FromDays (days As Integer, Optional hours As Integer = 0, Optional minutes As Long = 0, Optional seconds As Long = 0, Optional milliseconds As Long = 0, Optional microseconds As Long = 0) As TimeSpan

參數

days
Int32

天數。

hours
Int32

時數。

minutes
Int64

分鐘數。

seconds
Int64

秒數。

milliseconds
Int64

毫秒數。

microseconds
Int64

微秒數。

傳回

會傳回 TimeSpan,代表指定的天數、小時、分鐘、秒、毫秒和微秒數。

例外狀況

參數會指定小於 MinValue 或大於 MaxValueTimeSpan

適用於