TimeSpan::FromSeconds Method (Double)
Returns a TimeSpan that represents a specified number of seconds, where the specification is accurate to the nearest millisecond.
Assembly: mscorlib (in mscorlib.dll)
Parameters
- value
-
Type:
System::Double
A number of seconds, accurate to the nearest millisecond.
| Exception | Condition |
|---|---|
| OverflowException | value is less than MinValue or greater than MaxValue. -or- value is Double::PositiveInfinity. -or- value is Double::NegativeInfinity. |
| ArgumentException | value is equal to Double::NaN. |
The value parameter is converted to milliseconds, which is converted to ticks, and that number of ticks is used to intialize the new TimeSpan. Therefore, value will only be considered accurate to the nearest millisecond. Note 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 example creates several TimeSpan objects using the FromSeconds method.
// 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 */
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1