我試圖讀取文本字段中有一些\n
的CSV文件。當我使用我在DrawString
中讀到的內容時,\n
出現在文本中,而不是換行符。看着調試器中的字符串,看起來TextFieldParser
已經自動爲我逃過了字符串。我沒有看到解決該行爲的類文檔中的任何屬性。C#TextFieldParser vs n
我試過用String.Replace()
來解決這個問題。但我似乎無法得到\ \正確的轉義。
string[] fields = parser.ReadFields();
String From = @"\\n"; // I put these here so that I could look at them in the debugger
String To = @"\n";
String Output = fields[1].Replace(From, To);
它看起來像那些也都逃到了地獄,即使我使用@語法。
我知道當有人向我展示時,這會變得很簡單。請善待:-)
編輯----------
String Output = fields[1].Replace(@"\n", "\r\n");
測試和工程。謝謝。
當我在文字中使用\ n時,DrawString會正確產生換行符。我用cript從字面上的例子。我只是用字符串「Test \ nTest」進行測試。嗯。找到一種不同的方式在調試器中查看它。當我點擊放大鏡圖標時,我只看到一個。我認爲有一種方法可以查看十六進制,但還沒有找到它。自從我上次使用Visual Studio以來已經過去了幾年。 – Mighty 2013-04-29 06:01:46
編輯 - 找到如何看待十六進制 – Mighty 2013-04-29 06:09:15
好的。使用替換字符串To = Strings.Chr(13).ToString()+ Strings.Chr(10).ToString();工作 – Mighty 2013-04-29 06:21:30