string.Format抛出异常

时间:2011-06-29 23:42:58

标签: c# .net string

我对String.Format有一个问题,我需要帮助:

string Placeholder = @"(function({0}, $, undefined) { {1} }( window.{0} = window.{0} || {}, jQuery));";
string output = string.Format(Placeholder, "Value1", "Value2");

String.Format

中存在以下异常

'string.Format(占位符,“Value1”,“Value2”)'引发了类型'System.FormatException'字符串的异常{System.FormatException}

知道为什么吗?

2 个答案:

答案 0 :(得分:8)

这是因为大括号:{ {1} }|| {}。使用双打:

string Placeholder = @"(function({0}, $, undefined) {{ {1} }}( window.{0} = window.{0} || {{}}, jQuery));";
string output = string.Format(Placeholder, "Value1", "Value2");

http://geekswithblogs.net/jonasb/archive/2007/03/05/108023.aspx

答案 1 :(得分:2)

你可能拥有{括号。尝试将不包围令牌的那些加倍。

像这样:

string Placeholder = @"(function({0}, $, undefined) {{ {1} }}( window.{0} = window.{0} || {{}}, jQuery));";
string output = string.Format(Placeholder, "Value1", "Value2");