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