2

我的 c# MVC2 项目中有以下代码行:

string.Format(@"{0\:HH\:mm}", new TimeSpan(0))

此行导致以下异常:

System.FormatException: Input string was not in a correct format.

谁能告诉我为什么?我正在使用 C#、asp.net、mvc2 和 .net 框架 4

4

4 回答 4

9

两个问题。首先,您不应该逃避第一个:。这是必要的分隔符,不应转义。

第二个是HH应该的hh

这运行没有错误:

string.Format(@"{0:hh\:mm}", new TimeSpan(0))
于 2012-10-15T13:55:08.913 回答
3

您的格式字符串使用HH- 它应该是hh.

请参阅MSDN 上的自定义 TimeSpan 格式字符串

此外,您的 first:不应该被转义 - 它是 placeholder 的一部分0,而不是文字。

一起:

string.Format(@"{0:hh\:mm}", new TimeSpan(0))
于 2012-10-15T13:53:57.750 回答
0

使用时应使用 hh 而不是 HH。

于 2012-10-15T13:55:45.347 回答
0

在此处查看规范:http: //msdn.microsoft.com/en-us/library/ee372286.aspx

您应该使用 hh 而不是 HH,例如:

var str = string.Format(@"{0:hh\:mm}", new TimeSpan(2,2,0));

于 2012-10-15T13:58:58.120 回答