您的位置:首页 > 编程语言 > C#

C#判断txt文档codepage

2012-12-10 11:07 134 查看
基于.netframework4.0的程序,代码如下:

public int GetTxtCodePage(FileStream filestream)

{

BinaryReader br = new BinaryReader(filestream);

Byte[] buffer = new Byte[3];

int count = br.Read(buffer, 0, 3);

if (buffer[0] >= 0xEF)

{

if (buffer[0] == 0xEF && buffer[1] == 0xBB && buffer[2] == 0xBF)

{

return 65001; //UTF8

}

else if (buffer[0] == 0xFE && buffer[1] == 0xFF)

{

return 1201; //UTF-16 Big endian

}

else if (buffer[0] == 0xFF && buffer[1] == 0xFE)

{

return 1200; //UTF-16 Little endian(unicode)

}

else

{

return 936; //GBK

}

}

else return 936; //GBK

}

测试有些txt文件由于编码不规范,导致了打开乱码。

如有错误,请广大码友指正~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: