C#读取不同编码方式的文件
用C#的 baseStream 读取文本文件,文本文件保存的编码方式有 ANSI,Utf-8,Unicode 不同方式。读取出来的文件头部不一样。
ANSI 无文件头部,直接读取的是文件对应的ASCII码。
utf-8 文件头部是 239 187 191 。
unicode文件头部是 255 254。
可以通过这种方法 判断读取的文件是什么格式编码
1 Stream baseStream = File.Open(fileName,FileMode.Open); 2 BinaryReader binaryReader = new BinaryReader(baseStream); 3 List<byte[]> buffTest = new List<byte[]>(); 4 for (long i = 0; i < baseStream.Length; i = i + 100) 5 { 6 buffTest.Add(binaryReader.ReadBytes(100)); 7 } 8 9 foreach(byte[] str in buffTest) 10 { 11 richTextBox1.Text +=byteToStr(str); 12 } 13 baseStream.Close();
首先定义一个stream,然后用此stream初始化一个binaryReader,通过二进制方式读取文件就可以判定了。

浙公网安备 33010602011771号