当存在特殊字符时,我对如何在C#中读取/写入文本文件感到有点迷失。我正在编写一个简单的脚本,它在.txt数据文件上进行一些清理,该文件包含“|”字符作为其分隔符。
foreach (string file in Directory.EnumerateFiles(@"path\raw txt","*.txt"))
{
string contents = File.ReadAllText(file);
contents = contents.Replace("¦", ",");
File.WriteAllText(file.Replace("raw txt", "txt"), contents);
}
但是,当我在Notepad ++中打开txt文件时,分隔符现在是 。到底发生了什么?什么甚至是这个字符(|)编码/我将如何确定?我尝试过添加以下内容:
string contents = File.ReadAllText(file, Encoding.UTF8);
File.WriteAllText(file.Replace("raw txt", "txt"), contents, Encoding.UTF8);
答案 0 :(得分:1)
现在,通过将编码切换为'默认'当阅读/写作时。
list.RemoveAll(l => l.A == 2 && l != list.FirstOrDefault(i => i.A == 2));
答案 1 :(得分:0)
尝试将记事本的编码更改为UTF-8