TimeSpan.FromHours 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
FromHours(Double) |
傳回表示指定時數的 TimeSpan,其規格的精確度達到最接近的毫秒數。 |
FromHours(Int32) | |
FromHours(Int32, Int64, Int64, Int64, Int64) |
FromHours(Double)
- 來源:
- TimeSpan.cs
- 來源:
- TimeSpan.cs
- 來源:
- TimeSpan.cs
傳回表示指定時數的 TimeSpan,其規格的精確度達到最接近的毫秒數。
public:
static TimeSpan FromHours(double value);
public static TimeSpan FromHours (double value);
static member FromHours : double -> TimeSpan
Public Shared Function FromHours (value As Double) As TimeSpan
參數
- value
- Double
精確度達到最接近毫秒數的時數。
傳回
代表 value
的物件。
例外狀況
value
小於 TimeSpan.MinValue 或大於 TimeSpan.MaxValue。
-或-
value
為 PositiveInfinity。
-或-
value
為 NegativeInfinity。
value
等於 NaN。
範例
下列範例會使用 FromHours 方法建立數個 TimeSpan 物件。
// Example of the TimeSpan::FromHours( double ) method.
using namespace System;
void GenTimeSpanFromHours( double hours )
{
// Create a TimeSpan object and TimeSpan string from
// a number of hours.
TimeSpan interval = TimeSpan::FromHours( hours );
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}", hours, timeInterval );
}
int main()
{
Console::WriteLine( "This example of TimeSpan::FromHours( double )\n"
"generates the following output.\n" );
Console::WriteLine( "{0,21}{1,18}", "FromHours", "TimeSpan" );
Console::WriteLine( "{0,21}{1,18}", "---------", "--------" );
GenTimeSpanFromHours( 0.0000002 );
GenTimeSpanFromHours( 0.0000003 );
GenTimeSpanFromHours( 0.0012345 );
GenTimeSpanFromHours( 12.3456789 );
GenTimeSpanFromHours( 123456.7898765 );
GenTimeSpanFromHours( 0.0002777 );
GenTimeSpanFromHours( 0.0166666 );
GenTimeSpanFromHours( 1 );
GenTimeSpanFromHours( 24 );
GenTimeSpanFromHours( 500.3389445 );
}
/*
This example of TimeSpan::FromHours( double )
generates the following output.
FromHours TimeSpan
--------- --------
2E-07 00:00:00.0010000
3E-07 00:00:00.0010000
0.0012345 00:00:04.4440000
12.3456789 12:20:44.4440000
123456.7898765 5144.00:47:23.5550000
0.0002777 00:00:01
0.0166666 00:01:00
1 01:00:00
24 1.00:00:00
500.3389445 20.20:20:20.2000000
*/
// Example of the TimeSpan.FromHours( double ) method.
using System;
class FromHoursDemo
{
static void GenTimeSpanFromHours( double hours )
{
// Create a TimeSpan object and TimeSpan string from
// a number of hours.
TimeSpan interval = TimeSpan.FromHours( hours );
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}", hours, timeInterval );
}
static void Main( )
{
Console.WriteLine(
"This example of TimeSpan.FromHours( double )\n" +
"generates the following output.\n" );
Console.WriteLine( "{0,21}{1,18}",
"FromHours", "TimeSpan" );
Console.WriteLine( "{0,21}{1,18}",
"---------", "--------" );
GenTimeSpanFromHours( 0.0000002 );
GenTimeSpanFromHours( 0.0000003 );
GenTimeSpanFromHours( 0.0012345 );
GenTimeSpanFromHours( 12.3456789 );
GenTimeSpanFromHours( 123456.7898765 );
GenTimeSpanFromHours( 0.0002777 );
GenTimeSpanFromHours( 0.0166666 );
GenTimeSpanFromHours( 1 );
GenTimeSpanFromHours( 24 );
GenTimeSpanFromHours( 500.3389445 );
}
}
/*
This example of TimeSpan.FromHours( double )
generates the following output.
FromHours TimeSpan
--------- --------
2E-07 00:00:00.0010000
3E-07 00:00:00.0010000
0.0012345 00:00:04.4440000
12.3456789 12:20:44.4440000
123456.7898765 5144.00:47:23.5550000
0.0002777 00:00:01
0.0166666 00:01:00
1 01:00:00
24 1.00:00:00
500.3389445 20.20:20:20.2000000
*/
// Example of the TimeSpan.FromHours( double ) method.
open System
let genTimeSpanFromHours hours =
// Create a TimeSpan object and TimeSpan string from
// a number of hours.
let interval = TimeSpan.FromHours hours
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 $"{hours,21}{timeInterval,26}"
printfn "This example of TimeSpan.FromHours( double )\ngenerates the following output.\n"
printfn "%21s%18s" "FromHours" "TimeSpan"
printfn "%21s%18s" "---------" "--------"
genTimeSpanFromHours 0.0000002
genTimeSpanFromHours 0.0000003
genTimeSpanFromHours 0.0012345
genTimeSpanFromHours 12.3456789
genTimeSpanFromHours 123456.7898765
genTimeSpanFromHours 0.0002777
genTimeSpanFromHours 0.0166666
genTimeSpanFromHours 1
genTimeSpanFromHours 24
genTimeSpanFromHours 500.3389445
(*
This example of TimeSpan.FromHours( double )
generates the following output.
FromHours TimeSpan
--------- --------
2E-07 00:00:00.0010000
3E-07 00:00:00.0010000
0.0012345 00:00:04.4440000
12.3456789 12:20:44.4440000
123456.7898765 5144.00:47:23.5550000
0.0002777 00:00:01
0.0166666 00:01:00
1 01:00:00
24 1.00:00:00
500.3389445 20.20:20:20.2000000
*)
' Example of the TimeSpan.FromHours( Double ) method.
Module FromHoursDemo
Sub GenTimeSpanFromHours( hours As Double )
' Create a TimeSpan object and TimeSpan string from
' a number of hours.
Dim interval As TimeSpan = _
TimeSpan.FromHours( hours )
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}", hours, timeInterval )
End Sub
Sub Main( )
Console.WriteLine( "This example of " & _
"TimeSpan.FromHours( Double )" & _
vbCrLf & "generates the following output." & vbCrLf )
Console.WriteLine( "{0,21}{1,18}", _
"FromHours", "TimeSpan" )
Console.WriteLine( "{0,21}{1,18}", _
"---------", "--------" )
GenTimeSpanFromHours( 0.0000002 )
GenTimeSpanFromHours( 0.0000003 )
GenTimeSpanFromHours( 0.0012345 )
GenTimeSpanFromHours( 12.3456789 )
GenTimeSpanFromHours( 123456.7898765 )
GenTimeSpanFromHours( 0.0002777 )
GenTimeSpanFromHours( 0.0166666 )
GenTimeSpanFromHours( 1 )
GenTimeSpanFromHours( 24 )
GenTimeSpanFromHours( 500.3389445 )
End Sub
End Module
' This example of TimeSpan.FromHours( Double )
' generates the following output.
'
' FromHours TimeSpan
' --------- --------
' 2E-07 00:00:00.0010000
' 3E-07 00:00:00.0010000
' 0.0012345 00:00:04.4440000
' 12.3456789 12:20:44.4440000
' 123456.7898765 5144.00:47:23.5550000
' 0.0002777 00:00:01
' 0.0166666 00:01:00
' 1 01:00:00
' 24 1.00:00:00
' 500.3389445 20.20:20:20.2000000
備註
參數 value
會轉換成毫秒,它會轉換成刻度,而且該數目的刻度是用來初始化新的 TimeSpan 。 因此, value
只會被視為最接近毫秒的精確度。 請注意,由於資料類型的 Double 精確度遺失,此轉換會產生 OverflowException 接近但仍在 或 MaxValue 範圍內 MinValue 之值的 。 例如,這會導致 OverflowException 下列嘗試具現化 TimeSpan 物件。
// The following throws an OverflowException at runtime
TimeSpan maxSpan = TimeSpan.FromHours(TimeSpan.MaxValue.TotalHours);
// The following throws an OverflowException at runtime
let maxSpan = TimeSpan.FromHours TimeSpan.MaxValue.TotalHours
' The following throws an OverflowException at runtime
Dim maxSpan As TimeSpan = TimeSpan.FromHours(TimeSpan.MaxValue.TotalHours)
另請參閱
- Double
- FromTicks(Int64)
- FromMilliseconds(Double)
- FromSeconds(Double)
- FromMinutes(Double)
- FromDays(Double)
適用於
FromHours(Int32)
FromHours(Int32, Int64, Int64, Int64, Int64)
public static TimeSpan FromHours (int hours, long minutes = 0, long seconds = 0, long milliseconds = 0, long microseconds = 0);
static member FromHours : int * int64 * int64 * int64 * int64 -> TimeSpan
Public Shared Function FromHours (hours As Integer, Optional minutes As Long = 0, Optional seconds As Long = 0, Optional milliseconds As Long = 0, Optional microseconds As Long = 0) As TimeSpan
參數
- hours
- Int32
- minutes
- Int64
- seconds
- Int64
- milliseconds
- Int64
- microseconds
- Int64
傳回
適用於
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應