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");
已测试并正常工作。谢谢。
如果您查看调试器,它是为您可视化换行符。它不是转义(也就是说,它仍然是十六进制值为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/