C#将天数转换为时间hh:mm

Bha*_*avi 1 c#

同时计算所有跨度的总和它显示导致天(dd:HH:mm)。问题是我如何只获取和HH:mmformat.how我的天转换成小时

          TimeSpan Span1 = TimeSpan.Parse(mnts1);
          TimeSpan Span2 = TimeSpan.Parse(tuts1);
          TimeSpan Span3 = TimeSpan.Parse(wdts1);
          TimeSpan Span4 = TimeSpan.Parse(thts1);
          TimeSpan Span5 = TimeSpan.Parse(frts1);
          TimeSpan Span6 = TimeSpan.Parse(stts1);
          TimeSpan Span7 = TimeSpan.Parse(suts1);
          TimeSpan  rf = Span1 + Span2 + Span3 + Span4 + Span5 + Span6 + Span7; 
Run Code Online (Sandbox Code Playgroud)

Mit*_*tch 5

手动格式化:

Console.WriteLine("{0:00}:{1:00}", rf.TotalHours, rf.Minutes);
Run Code Online (Sandbox Code Playgroud)

您仍然可以通过以下方式使用字符串格式string.Format

string result = string.Format("{0:00}:{1:00}", rf.TotalHours, rf.Minutes);
Console.WriteLine(result);
Run Code Online (Sandbox Code Playgroud)


Bhu*_*ake 5

似乎没有格式选项可用于获取总时数TimeSpan。最好的选择是使用该TotalHours属性:

Console.WriteLine("{0:00}:{1:00}", (int)rf.TotalHours, rf.Minutes);
Run Code Online (Sandbox Code Playgroud)

TotalHours 返回一个双精度数,因为它包括小数小时,因此您需要将其截断为整数部分。