有没有办法发现编码文件的字符集是什么? 可靠地执行此操作的唯一方法是在文本文件的开头查找 byte order marks. (该blob更一般地表示所使用的字符编码的字节序,但也表示编码 – 例如
StreamReader
类型支持检测这些标记以确定编码 – 您只需将标志传递给参数:
new System.IO.StreamReader("path", true)
然后,您可以检查stremReader.CurrentEncoding的值以确定文件使用的编码.但请注意,如果不存在字节编码标记,则CurrentEncoding将默认为Encoding.Default.