Поделиться через


TimeSpan.FromSeconds Метод

Определение

Перегрузки

FromSeconds(Double)

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

FromSeconds(Int64)

Инициализирует новый экземпляр структуры TimeSpan на указанное количество секунд.

FromSeconds(Int64, Int64, Int64)

Инициализирует новый экземпляр структуры TimeSpan до указанного количества секунд, миллисекунд и микросекунд.

FromSeconds(Double)

Исходный код:
TimeSpan.cs
Исходный код:
TimeSpan.cs
Исходный код:
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.

Примеры

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

// 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 это может создать OverflowException для значений, близких, но все еще в диапазоне MinValue или MaxValue, это причина OverflowException, например, при следующей попытке создать экземпляр объекта TimeSpan.

// 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, представляющую указанное количество секунд.

Исключения

Параметры указывают значение TimeSpan меньше MinValue или больше MaxValue.

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

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, представляющее указанное количество секунд, миллисекунд и микросекунд.

Исключения

Параметры указывают значение TimeSpan меньше MinValue или больше MaxValue.

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