常见字符编码表
编码 | 说明 | 编码范围 | 字节量 |
---|
ASC-II | 英文,标点,基本指令 | 0到127 | 单字节 |
ISO-8859-1 | ASC-II扩展,西欧字符 | 128到255 | 单字节 |
ANSI,CJK | ANSI是一种字符编码规范,设计为了使计算机支持更多语言,英文用单字节编码,其他字符用双字节编码CJK表示亚洲字符编码的统称(中日韩) | | |
GBK | 中国国标码 | 最大65535 | 英文使用单字节,中文使用双字节 |
UNICODE | 统一码Java的char类型字符 就采用Unicode编码 | 100万+编码位,分为常用字符表,生僻字符表等,我们只是用常用表 | 常用字符表所有字符都采用双字节 |
UTF-8 | Unicode传输格式Unicode Transformations Format为了解决Unicode英文字符字节量翻倍的问题,提出的一种变长的编码格式 | 11 | 英文单字节某些字符双字节中文三字节一些特殊符号四字节 |
@Test
public void code() throws IOException {
String s = "我爱你中国";
System.out.println(s.getBytes("utf-8").length);
System.out.println(s.getBytes("gbk").length);
System.out.println(s.getBytes("unicode").length);
System.out.println(s.getBytes("iso-8859-1").length);
}