2012-06-11 140 views
3

我正在读取UTF-8编码的文本文件。一些文件行包含重音。像这样的:EdiçÃo。但在控制台和LINQPad输出Edi��o而不是。读取UTF8文件,问题

这里是如何我读文件:

File.ReadAllLines("foo.txt", Encoding.UTF8); 

如何解决这一问题?

回答

8

我不能说LINQPad有什么问题,但控制台可能设置为不同的代码页,并且它的字体中没有这些字符。见Unicode characters in Windows command line - how?

+0

这个。这很可能只是您使用的字体不包含要显示的字符的情况。要验证,请在调试中运行应用程序,并在读取文件后放置断点。如果字节值全部正确,则全部设置。只要改变你的输出字体。 – dodexahedron