编码和解码:前后的编码格式要一致!
编码:简单理解:将能看懂的东西--->看不懂的东西
解码:看不懂的东西---能看懂的东西
举例1: 谍战片中的编码呀
举例1: 今天老地方见...
编码:今---->字节---->二进制数据
解码:二进制数据-->十进制数据--->字节---->字符串----->今
编码: 将字符串变成一个字节数组
public byte[] getBytes() :平台默认编码集(默认的是Gbk)
public byte[] getBytes(Charset charset) ;"指定编码格式
解码:将字节数组--->字符串
public String(byte[] bytes) :使用平台默认编码集(gbk)
//定义一个字符串
String str ="你好" ;
//编码和解码:前后必须一致
//编码
// byte[] bys = str.getBytes() ;
byte[] bys = str.getBytes("utf-8") ;//[ -28, -67, -96, -27, -91, -67]
System.out.println(Arrays.toString(bys));//[-60, -29, -70, -61]
System.out.println("------------------");
//解码
// public String(byte[] bytes) :使用平台默认编码集(gbk)
// String s = new String(bys) ;
// String s = new String(bys,"gbk") ;//一个中文对应三个字节
String s = new String(bys,"utf-8") ;//一个中文对应三个字节
System.out.println(s);
}
编码:简单理解:将能看懂的东西--->看不懂的东西
解码:看不懂的东西---能看懂的东西
举例1: 谍战片中的编码呀
举例1: 今天老地方见...
编码:今---->字节---->二进制数据
解码:二进制数据-->十进制数据--->字节---->字符串----->今
编码: 将字符串变成一个字节数组
public byte[] getBytes() :平台默认编码集(默认的是Gbk)
public byte[] getBytes(Charset charset) ;"指定编码格式
解码:将字节数组--->字符串
public String(byte[] bytes) :使用平台默认编码集(gbk)
public String(byte[] bytes,Charset charset):用指定的编码格式来解码
示例程序:
public static void main(String[] args) throws Exception {//定义一个字符串
String str ="你好" ;
//编码和解码:前后必须一致
//编码
// byte[] bys = str.getBytes() ;
byte[] bys = str.getBytes("utf-8") ;//[ -28, -67, -96, -27, -91, -67]
System.out.println(Arrays.toString(bys));//[-60, -29, -70, -61]
System.out.println("------------------");
//解码
// public String(byte[] bytes) :使用平台默认编码集(gbk)
// String s = new String(bys) ;
// String s = new String(bys,"gbk") ;//一个中文对应三个字节
String s = new String(bys,"utf-8") ;//一个中文对应三个字节
System.out.println(s);
}