字符流中的编码和解码分析

字符流中的编码和解码分析

编码中存储一个汉字时使用的编码格式不同,存储所需的字节数也不同。例如:存储一个汉字利用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(" "+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