【发布时间】:2014-11-05 16:42:15
【问题描述】:
我需要比较两个大于 24 小时的 TimeSpan 值。 为此,我使用以下代码
string startTime = textBox1.Text;
string endTime = textBox21.Text;
TimeSpan startTimet = new TimeSpan(int.Parse(startTime.Split(':')[0]), // hours
int.Parse(startTime.Split(':')[1]), // minutes
0);
TimeSpan endTimet = new TimeSpan(int.Parse(endTime.Split(':')[0]), // hours
int.Parse(endTime.Split(':')[1]), // minutes
0);
TimeSpan duration = endTimet.Subtract(startTimet);
label29.Text = duration.ToString();
如果值不大于 24H,一切正常,但如果我的值大于 24h,TimeSpan 将显示为 DD.HH.MM.SS。
例如:
结束时间 = 32:15
开始时间 = 02:00
持续时间 = 1.06:15:00
而我真正需要的是像 HH:MM 这样的普通格式,假设小时数大于 24,得到预期的 30:15
有人可以帮我吗? 问候
【问题讨论】:
-
复制链接相似,但与询问的不完全相同。
-
@MattJohnson:你看到了什么不同? Jon 接受的答案正是这里的 OP 所要求的。
-
@dotNET - 技术类似,是的。但是请求的格式不同。这个问题还涉及解析和减法,尽管有人可能会认为这些与问题无关。它真的可以去任何一种方式,但在我看来它不是一个精确重复。
标签: c# winforms visual-studio timespan