TimeSpan.FromMinutes(Double) Метод

Определение

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

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

Параметры

value
Double

Количество минут, округленное до ближайшей миллисекунды.

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

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

Исключения

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

-или-

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

-или-

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

value равно NaN.

Примеры

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

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

int main()
{
   Console::WriteLine( "This example of TimeSpan::FromMinutes( double )\n"
   "generates the following output.\n" );
   Console::WriteLine( "{0,21}{1,18}", "FromMinutes", "TimeSpan" );
   Console::WriteLine( "{0,21}{1,18}", "-----------", "--------" );
   GenTimeSpanFromMinutes( 0.00001 );
   GenTimeSpanFromMinutes( 0.00002 );
   GenTimeSpanFromMinutes( 0.12345 );
   GenTimeSpanFromMinutes( 1234.56789 );
   GenTimeSpanFromMinutes( 12345678.98765 );
   GenTimeSpanFromMinutes( 0.01666 );
   GenTimeSpanFromMinutes( 1 );
   GenTimeSpanFromMinutes( 60 );
   GenTimeSpanFromMinutes( 1440 );
   GenTimeSpanFromMinutes( 30020.33667 );
}

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

          FromMinutes          TimeSpan
          -----------          --------
                1E-05          00:00:00.0010000
                2E-05          00:00:00.0010000
              0.12345          00:00:07.4070000
           1234.56789          20:34:34.0730000
       12345678.98765     8573.09:18:59.2590000
              0.01666          00:00:01
                    1          00:01:00
                   60          01:00:00
                 1440        1.00:00:00
          30020.33667       20.20:20:20.2000000
*/
// Example of the TimeSpan.FromMinutes( double ) method.
using System;

class FromMinutesDemo
{
    static void GenTimeSpanFromMinutes( double minutes )
    {
        // Create a TimeSpan object and TimeSpan string from 
        // a number of minutes.
        TimeSpan    interval = TimeSpan.FromMinutes( minutes );
        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}", minutes, timeInterval );
    } 

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

        GenTimeSpanFromMinutes( 0.00001 );
        GenTimeSpanFromMinutes( 0.00002 );
        GenTimeSpanFromMinutes( 0.12345 );
        GenTimeSpanFromMinutes( 1234.56789 );
        GenTimeSpanFromMinutes( 12345678.98765 );
        GenTimeSpanFromMinutes( 0.01666 );
        GenTimeSpanFromMinutes( 1 );
        GenTimeSpanFromMinutes( 60 );
        GenTimeSpanFromMinutes( 1440 );
        GenTimeSpanFromMinutes( 30020.33667 );
    } 
} 

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

          FromMinutes          TimeSpan
          -----------          --------
                1E-05          00:00:00.0010000
                2E-05          00:00:00.0010000
              0.12345          00:00:07.4070000
           1234.56789          20:34:34.0730000
       12345678.98765     8573.09:18:59.2590000
              0.01666          00:00:01
                    1          00:01:00
                   60          01:00:00
                 1440        1.00:00:00
          30020.33667       20.20:20:20.2000000
*/
// Example of the TimeSpan.FromMinutes( double ) method.
open System

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

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

genTimeSpanFromMinutes 0.00001
genTimeSpanFromMinutes 0.00002
genTimeSpanFromMinutes 0.12345
genTimeSpanFromMinutes 1234.56789
genTimeSpanFromMinutes 12345678.98765
genTimeSpanFromMinutes 0.01666
genTimeSpanFromMinutes 1
genTimeSpanFromMinutes 60
genTimeSpanFromMinutes 1440
genTimeSpanFromMinutes 30020.33667

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

          FromMinutes          TimeSpan
          -----------          --------
                1E-05          00:00:00.0010000
                2E-05          00:00:00.0010000
              0.12345          00:00:07.4070000
           1234.56789          20:34:34.0730000
       12345678.98765     8573.09:18:59.2590000
              0.01666          00:00:01
                    1          00:01:00
                   60          01:00:00
                 1440        1.00:00:00
          30020.33667       20.20:20:20.2000000
*)
' Example of the TimeSpan.FromMinutes( Double ) method.
Module FromMinutesDemo

    Sub GenTimeSpanFromMinutes( minutes As Double )

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

    Sub Main( )

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

        GenTimeSpanFromMinutes( 0.00001 )
        GenTimeSpanFromMinutes( 0.00002 )
        GenTimeSpanFromMinutes( 0.12345 )
        GenTimeSpanFromMinutes( 1234.56789 )
        GenTimeSpanFromMinutes( 12345678.98765 )
        GenTimeSpanFromMinutes( 0.01666 )
        GenTimeSpanFromMinutes( 1 )
        GenTimeSpanFromMinutes( 60 )
        GenTimeSpanFromMinutes( 1440 )
        GenTimeSpanFromMinutes( 30020.33667 )
    End Sub 
End Module 

' This example of TimeSpan.FromMinutes( Double )
' generates the following output.
' 
'           FromMinutes          TimeSpan
'           -----------          --------
'                 1E-05          00:00:00.0010000
'                 2E-05          00:00:00.0010000
'               0.12345          00:00:07.4070000
'            1234.56789          20:34:34.0730000
'        12345678.98765     8573.09:18:59.2590000
'               0.01666          00:00:01
'                     1          00:01:00
'                    60          01:00:00
'                  1440        1.00:00:00
'           30020.33667       20.20:20:20.2000000

Комментарии

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

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

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

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