C#中的自动编码检测

时间:2010-09-19 16:37:00

标签: c# .net encoding

  

可能重复:
  Determine a string's encoding in C#

许多文本编辑器(如Notepad ++)可以检测任意文件的编码。我可以在C#中检测到文件的编码吗?

1 个答案:

答案 0 :(得分:8)

如果在尝试阅读时出现BOM,StreamReader会尝试自动检测文件的编码:

public class Program
{
    static void Main(string[] args)
    {
        using (var reader = new StreamReader("foo.txt"))
        {
            // Make sure you read from the file or it won't be able
            // to guess the encoding
            var file = reader.ReadToEnd();
            Console.WriteLine(reader.CurrentEncoding);
        }
    }
}