2012-02-19 198 views
2

我試圖在C#中執行字符串插值。我試圖結合的輸入字符串包含許多'{}'字符(因爲它的javascript),這似乎是導致錯誤。當字符串包含'{}'字符時不能組合字符串

爲什麼不能在C#中對這些字符串執行字符串插值?

string test = string.Format("{img: \"{0}\", html: \"{1}\"}", "images/a.png", "<div></div>"); 
// so the output should be 
// "{img: \"images/a.png\", html: \"<div></div>\"}" 

我得到的錯誤是:

輸入字符串的不正確的格式。

你能告訴我如何實現我的字符串插值嗎?

+1

如何'string.Format'應該告訴'{IMG之間的區別:'和'{0'? – 2012-02-19 23:55:52

回答

5

括號需要進行轉義:

string test = string.Format("{{img: \"{0}\", html: \"{1}\"}}", "images/a.png", "<div></div>");