将TimeSpan转换为Double

时间:2017-09-12 13:31:33

标签: c# datetime timespan

我在将时间跨度转换为双倍时遇到了一些麻烦。那是我用来将双值转换为时间跨度的代码:

int r = 150;
string t = TimeSpan.FromHours(Convert.ToDouble(r)).ToString(@"dd\.hh\:mm\:ss");

它给出了:

  

吨 - > 6.06:00:00

现在我需要从时间跨度(150)检索值(6.06:00:00)。

1 个答案:

答案 0 :(得分:4)

您需要给定时间跨度的总小时数吗?

double totalHours = t.TotalHours;

所以不要将时间跨度转换为字符串,而是将其存储为TimeSpan

TimeSpan.TotalHours

  

获取以整数表示的当前TimeSpan结构的值   和分数小时。

如果您有一个字符串6.06:00:00并且您想要小时数,请先将其解析为TimeSpan

TimeSpan ts = TimeSpan.Parse("6.06:00:00");
double hours = ts.TotalHours;