# TimeSpan.FromSeconds(Double) メソッド

## 定義

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

#### パラメーター

value
Double

ミリ秒単位の精度による秒数。A number of seconds, accurate to the nearest millisecond.

#### 戻り値

`value` を表すオブジェクト。An object that represents `value`.

#### 例外

`value`MinValue 未満であるか、MaxValue を超えています。`value` is less than MinValue or greater than MaxValue.

または-or- `value`PositiveInfinity です。`value` is PositiveInfinity.

または-or- `value`NegativeInfinity です。`value` is NegativeInfinity.

`value`NaN が等価です。`value` is equal to NaN.

## 例

``````// Example of the TimeSpan::FromSeconds( double ) method.
using namespace System;
void GenTimeSpanFromSeconds( double seconds )
{

// Create a TimeSpan object and TimeSpan string from
// a number of seconds.
TimeSpan interval = TimeSpan::FromSeconds( seconds );
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}", seconds, timeInterval );
}

int main()
{
Console::WriteLine( "This example of TimeSpan::FromSeconds( double )\n"
"generates the following output.\n" );
Console::WriteLine( "{0,21}{1,18}", "FromSeconds", "TimeSpan" );
Console::WriteLine( "{0,21}{1,18}", "-----------", "--------" );
GenTimeSpanFromSeconds( 0.001 );
GenTimeSpanFromSeconds( 0.0015 );
GenTimeSpanFromSeconds( 12.3456 );
GenTimeSpanFromSeconds( 123456.7898 );
GenTimeSpanFromSeconds( 1234567898.7654 );
GenTimeSpanFromSeconds( 1 );
GenTimeSpanFromSeconds( 60 );
GenTimeSpanFromSeconds( 3600 );
GenTimeSpanFromSeconds( 86400 );
GenTimeSpanFromSeconds( 1801220.2 );
}

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

FromSeconds          TimeSpan
-----------          --------
0.001          00:00:00.0010000
0.0015          00:00:00.0020000
12.3456          00:00:12.3460000
123456.7898        1.10:17:36.7900000
1234567898.7654    14288.23:31:38.7650000
1          00:00:01
60          00:01:00
3600          01:00:00
86400        1.00:00:00
1801220.2       20.20:20:20.2000000
*/
``````
``````// Example of the TimeSpan.FromSeconds( double ) method.
using System;

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

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

GenTimeSpanFromSeconds( 0.001 );
GenTimeSpanFromSeconds( 0.0015 );
GenTimeSpanFromSeconds( 12.3456 );
GenTimeSpanFromSeconds( 123456.7898 );
GenTimeSpanFromSeconds( 1234567898.7654 );
GenTimeSpanFromSeconds( 1 );
GenTimeSpanFromSeconds( 60 );
GenTimeSpanFromSeconds( 3600 );
GenTimeSpanFromSeconds( 86400 );
GenTimeSpanFromSeconds( 1801220.2 );
}
}

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

FromSeconds          TimeSpan
-----------          --------
0.001          00:00:00.0010000
0.0015          00:00:00.0020000
12.3456          00:00:12.3460000
123456.7898        1.10:17:36.7900000
1234567898.7654    14288.23:31:38.7650000
1          00:00:01
60          00:01:00
3600          01:00:00
86400        1.00:00:00
1801220.2       20.20:20:20.2000000
*/
``````
``````' Example of the TimeSpan.FromSeconds( Double ) method.
Module FromSecondsDemo

Sub GenTimeSpanFromSeconds( seconds As Double )

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

Sub Main( )

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

GenTimeSpanFromSeconds( 0.001 )
GenTimeSpanFromSeconds( 0.0015 )
GenTimeSpanFromSeconds( 12.3456 )
GenTimeSpanFromSeconds( 123456.7898 )
GenTimeSpanFromSeconds( 1234567898.7654 )
GenTimeSpanFromSeconds( 1 )
GenTimeSpanFromSeconds( 60 )
GenTimeSpanFromSeconds( 3600 )
GenTimeSpanFromSeconds( 86400 )
GenTimeSpanFromSeconds( 1801220.2 )
End Sub
End Module

' This example of TimeSpan.FromSeconds( Double )
' generates the following output.
'
'           FromSeconds          TimeSpan
'           -----------          --------
'                 0.001          00:00:00.0010000
'                0.0015          00:00:00.0020000
'               12.3456          00:00:12.3460000
'           123456.7898        1.10:17:36.7900000
'       1234567898.7654    14288.23:31:38.7650000
'                     1          00:00:01
'                    60          00:01:00
'                  3600          01:00:00
'                 86400        1.00:00:00
'             1801220.2       20.20:20:20.2000000
``````

## 注釈

`value` パラメーターは、タイマー刻みに変換されるミリ秒に変換され、このタイマー刻みの数を使用して新しい 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. したがって、`value` は、ミリ秒単位で正確に見なされます。Therefore, `value` will only be considered accurate to the nearest millisecond. Double データ型の精度が失われているため、これは MinValue または MaxValueのいずれかの値に対して OverflowException を生成することがあります。たとえば、次の例では、OverflowExceptionオブジェクトをインスタンス化しようとしています。TimeSpanNote that, because of the loss of precision of the Double data type, this can generate an OverflowException for values that are near but still in the range of either MinValue or MaxValue, This is the cause of an OverflowException, for example, in the following attempt to instantiate a TimeSpan object.

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