计算机认识字节,不认识字符
编码:字符到字节,encode
解码:从字节到字符,decode
String s="爽";
编码:
byte[] data=s.getBytes(); //编码
System.out.println(data.length); //获得字节数
编码成其他字符集:
data=s.getBytes("utf8");
解码:
需要:new String(bytes[] bytes,int offset,int length,String charsetName)
参数依次为:字节数组、从哪开始(索引)、解码长度、字符集模式
s=new String(data,0,data.length,"utf8") //将字节解码成utf8模式下的字符串
乱码:
1、字节数不够(解码时length长度不够)
2、字符集不统一