TimeSpan.FromMilliseconds(Double) Method

Definition

Returns a TimeSpan that represents a specified number of milliseconds.

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

Parameters

value
Double

A number of milliseconds.

Returns

An object that represents value.

Exceptions

value is less than TimeSpan.MinValue or greater than TimeSpan.MaxValue.

-or-

value is PositiveInfinity.

-or-

value is NegativeInfinity.

value is equal to NaN.

Examples

The following example creates several TimeSpan objects by using the FromMilliseconds method.

// Example of the TimeSpan::FromMilliseconds( double ) method.
using namespace System;
void GenTimeSpanFromMillisec( Double millisec )
{
   
   // Create a TimeSpan object and TimeSpan string from 
   // a number of milliseconds.
   TimeSpan interval = TimeSpan::FromMilliseconds( millisec );
   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}", millisec, timeInterval );
}

int main()
{
   Console::WriteLine( "This example of TimeSpan::FromMilliseconds( double )\n"
   "generates the following output.\n" );
   Console::WriteLine( "{0,21}{1,18}", "FromMilliseconds", "TimeSpan" );
   Console::WriteLine( "{0,21}{1,18}", "----------------", "--------" );
   GenTimeSpanFromMillisec( 1 );
   GenTimeSpanFromMillisec( 1.5 );
   GenTimeSpanFromMillisec( 12345.6 );
   GenTimeSpanFromMillisec( 123456789.8 );
   GenTimeSpanFromMillisec( 1234567898765.4 );
   GenTimeSpanFromMillisec( 1000 );
   GenTimeSpanFromMillisec( 60000 );
   GenTimeSpanFromMillisec( 3600000 );
   GenTimeSpanFromMillisec( 86400000 );
   GenTimeSpanFromMillisec( 1801220200 );
}

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

     FromMilliseconds          TimeSpan
     ----------------          --------
                    1          00:00:00.0010000
                  1.5          00:00:00.0020000
              12345.6          00:00:12.3460000
          123456789.8        1.10:17:36.7900000
      1234567898765.4    14288.23:31:38.7650000
                 1000          00:00:01
                60000          00:01:00
              3600000          01:00:00
             86400000        1.00:00:00
           1801220200       20.20:20:20.2000000
*/
// Example of the TimeSpan.FromMilliseconds( double ) method.
using System;

class FromMillisecDemo
{
    static void GenTimeSpanFromMillisec( Double millisec )
    {
        // Create a TimeSpan object and TimeSpan string from 
        // a number of milliseconds.
        TimeSpan    interval = TimeSpan.FromMilliseconds( millisec );
        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}", millisec, timeInterval );
    } 

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

        GenTimeSpanFromMillisec( 1 );
        GenTimeSpanFromMillisec( 1.5 );
        GenTimeSpanFromMillisec( 12345.6 );
        GenTimeSpanFromMillisec( 123456789.8 );
        GenTimeSpanFromMillisec( 1234567898765.4 );
        GenTimeSpanFromMillisec( 1000 );
        GenTimeSpanFromMillisec( 60000 );
        GenTimeSpanFromMillisec( 3600000 );
        GenTimeSpanFromMillisec( 86400000 );
        GenTimeSpanFromMillisec( 1801220200 );
    } 
} 

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

     FromMilliseconds          TimeSpan
     ----------------          --------
                    1          00:00:00.0010000
                  1.5          00:00:00.0020000
              12345.6          00:00:12.3460000
          123456789.8        1.10:17:36.7900000
      1234567898765.4    14288.23:31:38.7650000
                 1000          00:00:01
                60000          00:01:00
              3600000          01:00:00
             86400000        1.00:00:00
           1801220200       20.20:20:20.2000000
*/
// Example of the TimeSpan.FromMilliseconds( double ) method.
open System

let genTimeSpanFromMillisec millisec =
    // Create a TimeSpan object and TimeSpan string from 
    // a number of milliseconds.
    let interval = TimeSpan.FromMilliseconds millisec
    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 $"{millisec,21}{timeInterval,26}"

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

genTimeSpanFromMillisec 1
genTimeSpanFromMillisec 1.5
genTimeSpanFromMillisec 12345.6
genTimeSpanFromMillisec 123456789.8
genTimeSpanFromMillisec 1234567898765.4
genTimeSpanFromMillisec 1000
genTimeSpanFromMillisec 60000
genTimeSpanFromMillisec 3600000
genTimeSpanFromMillisec 86400000
genTimeSpanFromMillisec 1801220200

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

     FromMilliseconds          TimeSpan
     ----------------          --------
                    1          00:00:00.0010000
                  1.5          00:00:00.0020000
              12345.6          00:00:12.3460000
          123456789.8        1.10:17:36.7900000
      1234567898765.4    14288.23:31:38.7650000
                 1000          00:00:01
                60000          00:01:00
              3600000          01:00:00
             86400000        1.00:00:00
           1801220200       20.20:20:20.2000000
*)
' Example of the TimeSpan.FromMilliseconds( Double ) method.
Module FromMillisecDemo

    Sub GenTimeSpanFromMillisec( millisec As Double )

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

    Sub Main( )

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

        GenTimeSpanFromMillisec( 1 )
        GenTimeSpanFromMillisec( 1.5 )
        GenTimeSpanFromMillisec( 12345.6 )
        GenTimeSpanFromMillisec( 123456789.8 )
        GenTimeSpanFromMillisec( 1234567898765.4 )
        GenTimeSpanFromMillisec( 1000 )
        GenTimeSpanFromMillisec( 60000 )
        GenTimeSpanFromMillisec( 3600000 )
        GenTimeSpanFromMillisec( 86400000 )
        GenTimeSpanFromMillisec( 1801220200 )
    End Sub 
End Module 

' This example of TimeSpan.FromMilliseconds( Double )
' generates the following output.
' 
'      FromMilliseconds          TimeSpan
'      ----------------          --------
'                     1          00:00:00.0010000
'                   1.5          00:00:00.0020000
'               12345.6          00:00:12.3460000
'           123456789.8        1.10:17:36.7900000
'       1234567898765.4    14288.23:31:38.7650000
'                  1000          00:00:01
'                 60000          00:01:00
'               3600000          01:00:00
'              86400000        1.00:00:00
'            1801220200       20.20:20:20.2000000

Remarks

The value parameter is converted to ticks, and that number of ticks is used to initialize 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 conversion can generate an OverflowException for values that are near to but still in the range of either MinValue or MaxValue. 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.FromMilliseconds(TimeSpan.MaxValue.TotalMilliseconds);
// The following throws an OverflowException at runtime
let maxSpan = TimeSpan.FromMilliseconds TimeSpan.MaxValue.TotalMilliseconds
' The following throws an OverflowException at runtime
Dim maxSpan As TimeSpan = TimeSpan.FromMilliseconds(TimeSpan.MaxValue.TotalMilliseconds)

Applies to

See also