建议TimeSpan使用自定义格式将对象格式化为字符串的方式是什么?
TimeSpan
请注意:此答案适用于.Net 4.0及更高版本。 如果要在.Net 3.5或更低版本中格式化TimeSpan,请参阅JohannesH的答案。
.Net 4.0中引入了自定义TimeSpan格式字符串。您可以在“ MSDN 自定义TimeSpan格式字符串”页面上找到可用格式说明符的完整参考。
这是一个示例时间跨度格式字符串:
string.Format("{0:hh\\:mm\\:ss}", myTimeSpan); //example output 15:36:15
( UPDATE ),这是使用C#6字符串插值的示例:
$"{myTimeSpan:hh\\:mm\\:ss}"; //example output 15:36:15
您需要使用“ \”对“:”字符进行转义(除非使用逐字字符串,否则必须对自身进行转义)。
此摘录来自“ MSDN 自定义TimeSpan格式字符串”页面,它说明了如何转义“:”和“。”。格式字符串中的字符:
自定义TimeSpan格式说明符不包含占位符分隔符,例如将天与小时,小时与分钟或秒与小数秒分隔的符号。而是,这些符号必须作为字符串文字包含在自定义格式字符串中。例如,“ dd.hh:mm”将句点(。)定义为天和小时之间的分隔符,将冒号(:)定义为时和分钟之间的分隔符。