我使用此代码转换Timespan
为String
(例如:14:53):
myTimeSpan.ToString("hh:mm");
但发生此错误:
输入字符串的格式不正确
这样做的正确方法是什么?
myTimeSpan.ToString(@"hh\:mm")
自定义 TimeSpan 格式说明符不包括占位符分隔符,例如将天与小时、小时与分钟或秒与小数秒分开的符号。相反,这些符号必须作为字符串文字包含在自定义格式字符串中。例如,“dd.hh\:mm”将句点 (.) 定义为天和小时之间的分隔符,将冒号 (:) 定义为小时和分钟之间的分隔符。
var result = string.Format("{0:D2}:{1:D2}", myTimeSpan.Hours, myTimeSpan.Minutes);
从TimeSpan.ToString Method (String)
TimeSpan t = new TimeSpan(14, 53, 0);
Console.WriteLine(t.ToString(@"hh\:mm"));
作为替代方案,您可以使用String.Format
like;
Console.WriteLine(String.Format("{0}:{1}", t.Hours, t.Minutes));
请记住,TimeSpan.ToString(String)
重载仅适用于 .NET 4 或更高版本。
试试这个会 100% 工作!
myTimeSpan.ToString(@"dd\.hh\:mm");.