Timespan.FromHours 用于十进制转换
Timespan.FromHours for decimal conversion
我正在使用 TimeSpan.FromHours(9.30)
,它给出“09:18:00”,如果我使用 TimeSpan.Parse("09:30")
,那么它将 return 09:30。两者相同,但 TimeSpan.FromHours
更安全、更高效。
请指教为什么结果不同?
谢谢,
FromHours
是格式 "h.mm" 的 而不是 ,它是小时的分数。
所以你想要 TimeSpan.FromHours(9.5)
(想想“9 个半小时”)
另请参阅:TimeSpan.FromHours(Double)
注意:虽然 FromHours
需要 Double,但它只会精确到最接近的毫秒
TimeSpan.Parse(String)
需要一个时间间隔(注意:取决于系统文化 *)),所以在这里你有例如“09:30”实际上是 9 小时 30 分钟。
*) "dependend on system culture" 表示:“5.123”在美国文化中为 5 秒,123 毫秒,但在使用“,”作为小数点分隔符的文化中会引发异常。有关详细信息,请参阅链接文档。
我正在使用 TimeSpan.FromHours(9.30)
,它给出“09:18:00”,如果我使用 TimeSpan.Parse("09:30")
,那么它将 return 09:30。两者相同,但 TimeSpan.FromHours
更安全、更高效。
请指教为什么结果不同?
谢谢,
FromHours
是格式 "h.mm" 的 而不是 ,它是小时的分数。
所以你想要 TimeSpan.FromHours(9.5)
(想想“9 个半小时”)
另请参阅:TimeSpan.FromHours(Double)
注意:虽然 FromHours
需要 Double,但它只会精确到最接近的毫秒
TimeSpan.Parse(String)
需要一个时间间隔(注意:取决于系统文化 *)),所以在这里你有例如“09:30”实际上是 9 小时 30 分钟。
*) "dependend on system culture" 表示:“5.123”在美国文化中为 5 秒,123 毫秒,但在使用“,”作为小数点分隔符的文化中会引发异常。有关详细信息,请参阅链接文档。