# TimeSpan.FromDays(Double) Méthode

## Définition

Retourne un TimeSpan qui représente un nombre de jours spécifié, dont la spécification est précise à la milliseconde près.Returns a TimeSpan that represents a specified number of days, where the specification is accurate to the nearest millisecond.

``````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``

#### Paramètres

value
Double

Nombre de jours, précis à la milliseconde près.A number of days, accurate to the nearest millisecond.

#### Retours

Objet qui représente `value`.An object that represents `value`.

#### Exceptions

`value` est inférieur à MinValue ou supérieur à MaxValue.`value` is less than MinValue or greater than MaxValue.

-ou--or- `value` a la valeur PositiveInfinity.`value` is PositiveInfinity.

-ou--or- `value` a la valeur NegativeInfinity.`value` is NegativeInfinity.

`value` est égal à NaN.`value` is equal to NaN.

## Exemples

L’exemple suivant crée plusieurs objets TimeSpan à l’aide de la méthode FromDays.The following example creates several TimeSpan objects using the FromDays method.

``````// 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.
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
``````

## Remarques

Le paramètre `value` est converti en millisecondes, qui est converti en graduations, et ce nombre de graduations est utilisé pour initialiser la nouvelle TimeSpan.The `value` parameter is converted to milliseconds, which is converted to ticks, and that number of ticks is used to initialize the new TimeSpan. Par conséquent, `value` sera considéré comme précis à la milliseconde près.Therefore, `value` will only be considered accurate to the nearest millisecond. Notez que, en raison de la perte de précision du type de données Double, cette conversion peut provoquer une OverflowException pour les valeurs proches de, mais toujours dans la plage de MinValue ou MaxValue.Note that, because of the loss of precision of the Double data type, this conversion can cause an OverflowException for values that are near to but still in the range of either MinValue or MaxValue. Par exemple, cela provoque une OverflowException dans la tentative suivante d’instancier un objet TimeSpan.For example, this causes an OverflowException in the following attempt to instantiate a TimeSpan object.

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