我需要将以下字符串写入文件文件:
SEGS,AUS1,1,0,0,712205,584,8659094,2,NUÑEZFELIXARTURO,584
我使用的时候:
using (System.IO.StreamWriter sw = new System.IO.StreamWriter(@fileSobrantes, true)) {
sw.WriteLine("SEGS,AUS1,1,0,0,712205,584,8659094,2,NUÑEZ FELIX ARTURO,584");
}
我在文件
中得到了这个SEGS,AUS1,1,0,0,712205,584,8659094,2,NUÃ'EZFELIXARTURO,584
我尝试使用ASCII,UNICODE和所有UTF中的编码参数,但不起作用。
System.IO.StreamWriter(@fileSobrantes, true,Encoding.UTF32 ))
答案 0 :(得分:1)
如果不提供十六进制转储,您无法轻松(并准确地)表示文件中的内容。你想用什么来读取文件?我的猜测是,如果你尝试Encoding.Default
这对你有用,但是如果不知道你想要用什么来阅读它,就很难肯定。
另一种选择是 source 字符串不正确。如果你真的把它作为源代码中的字符串文字,你确定你已经设置了Visual Studio来正确解释它吗?
有关建议的技巧,请参阅我的unicode debugging page。
编辑:顺便说一句,为什么你在fileSobrantes
前加@
?对于标识符,如果它们是关键字,则只需要这样做。您可能会对逐字字符串文字感到困惑 - 但这不是字符串文字,而是变量名称。