读书人

判断给定中文字符分属字符集的方法

发布时间: 2012-10-29 10:03:53 作者: rapoo

判断给定中文字符所属字符集的方法

常见的中文字符集有:GB2312字符集、GBK 字符集、BIG5字符集、 GB 18030字符集。其中GB2312字符集、GBK 字符集、BIG5字符集都是采用两个字节表示一个汉字。下面的程序中h表示字符的高字节位、l表示字符的低字节位,十六进制数值表示的是各种字符编码集的边界。

?

    public static boolean isGB2312(byte h, byte l){           int ih = h & 0xff;           int il = l & 0xff;           return ((ih>=0xa1 && ih<=0xf7 &&                     il>=0xa1 && il<=0xfe) ? true : false);       }         public static boolean isGBK(byte h, byte l){           int ih = h & 0xff;           int il = l & 0xff;           return ((ih>=0x81 && ih<=0xfe &&                    (il>=0x40 && il<=0x7e ||                     il>=0x80 && il<=0xfe )) ? true : false);       }       public static boolean isBIG5(byte h, byte l){           int ih = h & 0xff;           int il = l & 0xff;           return ((ih>=0xa1 && ih<=0xf9 &&                    (il>=0x40 && il<=0x7e ||                     il>=0xa1 && il<=0xfe )) ? true : false);       }   

?

这个方法已经用到了Yard中文分词系统中进行字符集的判断,同时如果你读过mysql的源码你会发现mysql里对字符集的判断也是采用这种方法。

?

我怎么转,还有对 "我们有的撒旦法" 这种纵不能是一个一个的来判断吧..

读书人网 >软件架构设计

热点推荐