基础知识
计算机中储存的信息都是用二进制数表示的;我们在屏幕上看到的英文、汉字等字符是二进制数转换之后的结果
按照某种规则, 将字符存储到计算机中,称为编码。反之,将存储在计算机中的二进制数按照某种规则解析显示出来,称为解码。这里强调一下: 按照A编码存储,必须按照A编码解析,这样才能显示正确的文本符号。否则就会导致乱码现象
字符编码:就是一套自然语言的字符与二进制数之间的对应规则(A,65)
字符集:各个国家为自己国家的字符取的一套编号规则
GBK编码:一个中文字符一般占用2个字节
UTF-8:一个中文字符一般占3个字节
注意:采用何种规则编码,就采用对应规则解码,否则就会报错
字符串编码
byte[] getBytes()
:使用平台的默认字符集将该String编码为一系列节, 将结果存储到新的字节数组中byte[] getBytes(String charsetName)
:使用指定的字符集将该String编码为一系列字节,将结果存储到新的字节数组中字符串解码
String(byte[] bytes)
:通过使用平台的默认字符集解码指定的字节数组来构造新的Str