我遇到了带有时间跨度的字符串格式的问题。
string.Format("{0:00}:{1:00}", Math.Floor(ts.TotalHours), ts.Minutes)
哪会产生这个结果 12:08 ,但问题是它可以进入减去然后它看起来像 -01:-59 这是不正确的应该看起来像这样 -01:59 。 我曾尝试使用Math.Abs,但即使数字为-56,它也只显示0 处理这个问题的最佳方法是什么?
答案 0 :(得分:1)
您可以使用Math.Abs
:
string.Format("{0:00}:{1:00}", Math.Floor((decimal)ts.Hours), Math.Abs(ts.Minutes))
示例:
TimeSpan ts = new TimeSpan(-1, -1, 0); // returns -01:01
ts = new TimeSpan(-1, 1, 0); // returns -00:59
ts = new TimeSpan(1, 1, 0); // returns 01:01