TimeSpan.FromSeconds Method

Returns a TimeSpan that represents a specified number of seconds, where the specification is accurate to the nearest millisecond.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public static TimeSpan FromSeconds(
	double value


Type: System.Double
A number of seconds, accurate to the nearest millisecond.

Return Value

Type: System.TimeSpan
An object that represents value.


value is less than MinValue or greater than MaxValue.


value is Double.PositiveInfinity.


value is Double.NegativeInfinity.


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 throws an OverflowException at runtime
TimeSpan maxSpan = TimeSpan.FromSeconds(TimeSpan.MaxValue.TotalSeconds);

The following code example creates several TimeSpan objects using the FromSeconds method.

// Example of the TimeSpan.FromSeconds( double ) method.
using System;

class Example
   static void GenTimeSpanFromSeconds(System.Windows.Controls.TextBlock outputBlock, 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 += "        ";

      outputBlock.Text += String.Format("{0,21}{1,26}", seconds, timeInterval) + "\n";

   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
      outputBlock.Text += 
          "This example of TimeSpan.FromSeconds( double )\n" +
          "generates the following output.\n" + "\n";
      outputBlock.Text += "{0,21}{1,18}",
          "FromSeconds", "TimeSpan" + "\n";
      outputBlock.Text += "{0,21}{1,18}",
          "-----------", "--------" + "\n";

      GenTimeSpanFromSeconds(outputBlock, 0.001);
      GenTimeSpanFromSeconds(outputBlock, 0.0015);
      GenTimeSpanFromSeconds(outputBlock, 12.3456);
      GenTimeSpanFromSeconds(outputBlock, 123456.7898);
      GenTimeSpanFromSeconds(outputBlock, 1234567898.7654);
      GenTimeSpanFromSeconds(outputBlock, 1);
      GenTimeSpanFromSeconds(outputBlock, 60);
      GenTimeSpanFromSeconds(outputBlock, 3600);
      GenTimeSpanFromSeconds(outputBlock, 86400);
      GenTimeSpanFromSeconds(outputBlock, 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


Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.