java utf-8编码中文占三个字节
System.out.println("中".getBytes("utf-8").length);for(byte b:"中".getBytes("utf-8")){System.out.println(b);}System.out.println("中".getBytes("gb2312").length);for(byte b:"中".getBytes("gb2312")){System.out.println(b);}System.out.println("中".getBytes().length);for(byte b:"中".getBytes()){System.out.println(b);}/*3-28-72-832-42-482-42-48*//** * 中文用utf-8存占用32个字节,用gb2312存占2个字节 */? 1 楼 BackJoker 2011-08-02 具体去查一下UTF-8的编码资料,有的汉字是3个字节,有的汉字是4个字节 2 楼 junfeng2010 2011-08-03 BackJoker 写道具体去查一下UTF-8的编码资料,有的汉字是3个字节,有的汉字是4个字节谢谢!你说的是对的。
占用3个字节的范围
U+2E80 - U+2EF3 : 0xE2 0xBA 0x80 - 0xE2 0xBB 0xB3 共 115 个
U+2F00 - U+2FD5 : 0xE2 0xBC 0x80 - 0xE2 0xBF 0x95 共 213 个
U+3005 - U+3029 : 0xE3 0x80 0x85 - 0xE3 0x80 0xA9 共 36 个
U+3038 - U+4DB5 : 0xE3 0x80 0xB8 - 0xE4 0xB6 0xB5 共 7549 个
U+4E00 - U+FA6A : 0xE4 0xB8 0x80 - 0xEF 0xA9 0xAA 共 44138 个
U+FA70 - U+FAD9 : 0xEF 0xA9 0xB0 - 0xEF 0xAB 0x99 共 105 个
合计: 52156 个
占用4个字节的范围
U+20000 - U+2FA1D : 0xF0 0xA0 0x80 0x80 - 0xF0 0xAF 0xA8 0x9D 共 64029 个
合计: 64029 个