如何从超过24小时的时间跨度显示小时和分钟

本文关键字:显示 时间跨度 小时 分钟 24小时 | 更新日期: 2023-09-27 18:09:51

我的时间跨度为:

Timespan span = new Timespan(40,24,34);

还有这一行

FormClock.Text = TimeToInstall.ToString(@"hh':mm':ss");

我想在文本中像这样显示:

40:24:34

如何做到这一点?

如何从超过24小时的时间跨度显示小时和分钟

看看MSDN,你不能用标准的。tostring()格式做到这一点。时间跨度的TotalHours属性似乎是你需要从天到小时的信息。

从MSDN:

TimeSpan interval = new TimeSpan(1,15,42,45,750);控制台。WriteLine(" TimeSpan的值:{0}",interval);

  Console.WriteLine("{0:N5} hours, as follows:", interval.TotalHours);
  Console.WriteLine("   Hours:        {0,3}", 
                    interval.Days * 24 + interval.Hours);
  Console.WriteLine("   Minutes:      {0,3}", interval.Minutes);
  Console.WriteLine("   Seconds:      {0,3}", interval.Seconds);
  Console.WriteLine("   Milliseconds: {0,3}", interval.Milliseconds);

所以在你的例子中:

FormClock.Text = string.Format("{0}:{1}:{2}". TimeToInstall.Days * 24 + TimeToInstall.Hours, TimeToInstall.Minutes, TimeToInstall.Seconds); 

如果它是你经常使用的东西,你可以考虑将它滚动到某种扩展方法中