只要是编辑器,就会涉及到文本编码的识别问题,对于有BOM(Byte Order Mark)头的文件,识别起来简单,但对于没有BOM头的文件,要准确识别出其编码就没那么容易了。
之前我在整理自己写的编辑器时仔细研究了一下文本编码问题,实现了一个识别方法,效果还不错,不但可以区分UTF8/UCS2(UTF16)/ANSI编码的文件,还能识别出二进制文件,对ANSI文件还可以区分出是简体还是繁体,并且这个区分简繁体的方法还是我偶然试出来的。
几篇文章原文发表在网易的Blog,在这里做个记号,链接如下: