string.Format()给出“inputstring格式不正确”

我在这里做错了什么?

string tmp = @" if (UseImageFiles) { vCalHeader += ""<td><img onmousedown='' src= '{0}cal_fastreverse.gif' width='13px' height='9' onmouseover='changeBorder(this, 0)' onmouseout='changeBorder(this, 1)' style='border:1px solid white'></td>\n""; //Year scroller (decrease 1 year) calHeight += 22; }"; string x = "xter"; tmp = string.Format(tmp, x); 

我明白了

inputstring的格式不正确

当试图改变{0} 。 我在C#和WinForms中这样做。

格式exception未处理
inputstring的格式不正确

排查提示问题:

确保你的方法参数是正确的格式。 将string转换为datetime时,parsingstring以将每个variables放入DateTime对象之前取出date。

string.Format()将每个“{”或“}”视为占位符的一部分(如已使用的“{0}”)。 你需要通过加倍来逃避每个字面意思。

所以在你的情况下:

  string tmp = @" if (UseImageFiles) {{ ... }}";