2014-03-26 30 views
0

我有一個StringBuilder我試圖追加一個格式化的字符串。格式化字符串中的雙引號C#

不幸的是,通常的轉義雙引號的方法似乎不起作用。

StringBuilder sb = New StringBuilder(); 
sb.AppendFormat("{0},\"{1}\" and \"{2}\",{3}", stringVariable, stringToQuote, otherStringToQuote, anotherStringVariable) 
sb.AppendLine(); 


//resulting text: 
//item0, item1 and "item2", item3 

奇怪的是,項目{1}不會被引用,但項目{2}會。這裏發生了什麼?

編輯:

更多信息,以防它是相關的:我寫的StringBuilder的內容到CSV文件(逗號分隔)。上面的AppendFormat調用將一行添加到csv。

+2

逃逸'{2}'是報價 –

+0

它工作正常,我身邊的反面。現在你已經修復了錯字,你可以再試一次嗎? –

+0

我再次嘗試,仍然沒有運氣。這讓我發瘋。 – AJSmyth

回答

2

你有

"{0},\"{1}\" and \"{2}"\,{3}" 

一個錯字嘗試後

"{0},\"{1}\" and \"{2}\",{3}" 
+0

現在已修復。然而,這不是問題(當我在複製代碼後替換內容時發生了錯誤)。 – AJSmyth