我创建了两个内容相同的 txt 文件(Windows 记事本)“谢谢 - спасибо”,并将它们保存为 utf8 和 unicode。在记事本中,它们看起来不错。然后我尝试使用 .Net 阅读它们:
...File.ReadAllText(utf8FileFullName, Encoding.UTF8);
和
...File.ReadAllText(unicodeFileFullName, Encoding.Unicode);
但在这两种情况下,我都得到了这个“谢谢 - ???????”。怎么了?
更新:utf8的代码
static void Main(string[] args)
{
var encoding = Encoding.UTF8;
var file = new FileInfo(@"D:\encodes\enc.txt");
Console.OutputEncoding = encoding;
var content = File.ReadAllText(file.FullName, encoding);
Console.WriteLine("encoding: " + encoding);
Console.WriteLine("content: " + content);
Console.ReadLine();
}
结果: 谢谢 ÑпаÑибо