TimeSpan.FromMilliseconds 方法

定义

重载

FromMilliseconds(Int64, Int64)

TimeSpan 结构的新实例初始化为指定的毫秒数和微秒。

FromMilliseconds(Double)

返回一个表示指定毫秒数的 TimeSpan

FromMilliseconds(Int64, Int64)

TimeSpan 结构的新实例初始化为指定的毫秒数和微秒。

public static TimeSpan FromMilliseconds (long milliseconds, long microseconds = 0);
static member FromMilliseconds : int64 * int64 -> TimeSpan
Public Shared Function FromMilliseconds (milliseconds As Long, Optional microseconds As Long = 0) As TimeSpan

参数

milliseconds
Int64

毫秒数。

microseconds
Int64

微秒数。

返回

返回一个表示指定毫秒数和微秒的 TimeSpan

例外

参数指定小于 MinValue 或大于 MaxValueTimeSpan

适用于

FromMilliseconds(Double)

Source:
TimeSpan.cs
Source:
TimeSpan.cs
Source:
TimeSpan.cs

返回一个表示指定毫秒数的 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

示例

以下示例使用 FromMilliseconds 方法创建多个 TimeSpan 对象。

// 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 数据类型的精度损失,此转换可以为接近但仍处于 MinValueMaxValue范围内的值生成 OverflowException。 例如,这会导致以下尝试实例化 TimeSpan 对象 OverflowException

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

另请参阅

适用于