对于gb2312来讲, 首字节码位从0×81 至0×FE,尾字节码位分别是0×40 至0×FE
public boolean isGB2312( String str ) { char[] chars = str.toCharArray(); boolean isGB2312 = false; for ( int i = 0; i < chars.length; i++ ) { byte[] bytes = ( "" + chars[i] ).getBytes(); if ( bytes.length == 2 ) { int[] ints = new int[2]; ints[0] = bytes[0] & 0xff; ints[1] = bytes[1] & 0xff; if ( ints[0] >= 0x81 && ints[0] <= 0xFE && ints[1] >= 0x40 && ints[1] <= 0xFE ) { isGB2312 = true; break; } } } return isGB2312; } 
|