TimeSpan.FromMilliseconds(Double) Метод

Определение

Возвращает объект TimeSpan, представляющий указанное количество миллисекунд.

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

Параметры

value
Double

Количество миллисекунд.

Возвращаемое значение

Объект, представляющий объект value.

Исключения

value значение меньше TimeSpan.MinValue или больше TimeSpan.MaxValue.

-или-

value имеет значение PositiveInfinity.

-или-

value имеет значение NegativeInfinity.

value равно NaN.

Примеры

В следующем примере создается несколько TimeSpan объектов с помощью FromMilliseconds метода .

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

Комментарии

Параметр value преобразуется в такты, и это количество тактов используется для инициализации нового TimeSpan. Таким образом, value будет считаться точным только до ближайшей миллисекунды. Обратите внимание, что из-за потери точности Double типа данных это преобразование может создать для значений OverflowException , близких к , но все еще в диапазоне MinValue или MaxValue. Например, это приводит к тому, что при следующей OverflowException попытке создать экземпляр TimeSpan объекта .

// 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)

Применяется к

См. также раздел