Gab*_*bar 4 c# datetime timespan
我有一个始终以毫秒为单位的Timespan,但我需要以分钟和秒为单位显示日期,以便始终如此"mm:ss".即使在时间跨度内有几个小时,输出字符串也应该只包含几分钟和几秒.
例如,如果有一个时间跨度02:40:30,它应该被转换为160:30.
有没有办法实现这个目标?
里德的回答几乎是正确的,但并不完全正确.例如,如果时间跨度为00:01:59,则由于F0数字格式的舍入,Reed的解决方案输出"2:59" .这是正确的实现:
string output = string.Format("{0}:{1:00}",
(int)timespan.TotalMinutes, // <== Note the casting to int.
timespan.Seconds);
Run Code Online (Sandbox Code Playgroud)
在C#6中,您可以使用字符串插值来减少代码:
var output = $"{(int)timespan.TotalMinutes}:{timespan.Seconds:00}";
Run Code Online (Sandbox Code Playgroud)
我这样做
timespan.ToString("mm\\:ss");
Run Code Online (Sandbox Code Playgroud)
您可以使用标准数字格式字符串自行格式化:
string output = string.Format("{0}:{1}", (int)timespan.TotalMinutes, timespan.Seconds);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5505 次 |
| 最近记录: |