TimeSpan.FromSeconds 方法

定义

重载

FromSeconds(Double)

返回一个表示指定秒数的 TimeSpan,其中规范准确到最接近毫秒。

FromSeconds(Int64)

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

FromSeconds(Int64, Int64, Int64)

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

FromSeconds(Double)

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

返回一个表示指定秒数的 TimeSpan,其中规范准确到最接近毫秒。

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

参数

value
Double

秒数,准确到最接近的毫秒。

返回

表示 value的对象。

例外

value 小于 TimeSpan.MinValue 或大于 TimeSpan.MaxValue

-或-

value PositiveInfinity

-或-

value NegativeInfinity

value 等于 NaN

示例

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

// 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
*/
// Example of the TimeSpan.FromSeconds( double ) method.
using System;

class FromSecondsDemo
{
    static 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 += "        ";

        Console.WriteLine( "{0,21}{1,26}", seconds, timeInterval );
    } 

    static void 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
*/
// Example of the TimeSpan.FromSeconds( double ) method.
open System

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

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

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
*)
' Example of the TimeSpan.FromSeconds( Double ) method.
Module FromSecondsDemo

    Sub GenTimeSpanFromSeconds( seconds As Double )

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

    Sub Main( )

        Console.WriteLine( "This example of " & _
            "TimeSpan.FromSeconds( Double )" & _
            vbCrLf & "generates the following output." & vbCrLf )
        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 )
    End Sub
End Module 

' 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

注解

value 参数转换为毫秒,该毫秒转换为时钟周期,并且该时钟周期数用于初始化新的 TimeSpan。 因此,value 仅被视为最接近毫秒的准确值。 请注意,由于 Double 数据类型的精度损失,这可以为 MinValueMaxValue范围内的值生成 OverflowException,例如,在以下尝试实例化 TimeSpan 对象时,这是 OverflowException的原因。

// The following throws an OverflowException at runtime
TimeSpan maxSpan = TimeSpan.FromSeconds(TimeSpan.MaxValue.TotalSeconds);
// The following throws an OverflowException at runtime
let maxSpan = TimeSpan.FromSeconds TimeSpan.MaxValue.TotalSeconds
' The following throws an OverflowException at runtime
Dim maxSpan As TimeSpan = TimeSpan.FromSeconds(TimeSpan.MaxValue.TotalSeconds)

另请参阅

适用于

FromSeconds(Int64)

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

public:
 static TimeSpan FromSeconds(long seconds);
public static TimeSpan FromSeconds (long seconds);
static member FromSeconds : int64 -> TimeSpan
Public Shared Function FromSeconds (seconds As Long) As TimeSpan

参数

seconds
Int64

秒数。

返回

返回表示指定秒数的 TimeSpan

例外

参数指定小于 MinValue 或大于 MaxValueTimeSpan 值。

适用于

FromSeconds(Int64, Int64, Int64)

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

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

参数

seconds
Int64

秒数。

milliseconds
Int64

毫秒数。

microseconds
Int64

微秒数。

返回

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

例外

参数指定小于 MinValue 或大于 MaxValueTimeSpan 值。

适用于