编码中存储一个汉字时使用的编码格式不同,存储所需的字节数也不同。例如:存储一个汉字利用GBK编码要用2个字节,UTF-8需要三个字节,所以我们需要学习字符流以及和字符流息息相关的字符集。
以下为一个不成熟的小例子!
import java.io.UnsupportedEncodingException;
import java.util.Arrays;
public class UNocode {
public static void main(String[] args) throws UnsupportedEncodingException {
String s="中国";
byte[]bytes=s.getBytes("utf-8");//utf-8三个字符代表一个汉字[-28, -72, -83, -27, -101, -67]
// System.out.print("\t"+Arrays.toString(bytes));
?
?
// byte[]bytes=s.getBytes("gbk");//gbk编码两个字符代表一个汉字[-42, -48, -71, -6]
// System.out.println(Arrays.toString(bytes));
?
?
// byte[]bytes=s.getBytes("Gb2312");//[-42, -48, -71, -6]
// System.out.println(Arrays.toString(bytes));
?
?
?
String ss=new String(bytes,"utf-8");
System.out.println(ss);//解码过程,按照编码格式解码
}
}
原文:https://www.cnblogs.com/gzy918/p/13833947.html