C# TextFieldParser vs

本文关键字:vs TextFieldParser | 更新日期: 2023-09-27 18:11:29

我正在尝试读取文本字段中有一些'n的CSV文件。当我使用我在DrawString中读到的内容时,'n出现在文本中,而不是换行。在调试器中查看字符串,似乎TextFieldParser已经自动为我转义了字符串。我在类文档中没有看到任何属性来解决这个行为。

我试过用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");

已测试并正常工作。谢谢。

C# TextFieldParser vs

如果您查看调试器,它是为您可视化换行符。它不是转义(也就是说,它仍然是十六进制值为0x10的ASCII字符,而不是两个字符'''和'n')。

DrawString is不会将"'n" (unix风格的行)解释为"开始新的行"。

但是,如果你将"'n"替换为"'r'n",它应该可以正常工作。

http://social.msdn.microsoft.com/forums/en - us/netfxcompact/thread/17e645bf - 6751 - 44 - d5 a5be af322b589122/