java 字符集 Charset

字符集就是为每个字符编个号码。如ASCII编码中,字符 'A' 的号码为 65 (或二进制01000001);GBK编码中,字符 '国' 对应的号码为47610 。

 

 

 

编码:将字符序列转换成二进制序列。

解码:将二进制序列转换成字符序列。

 

java提供Charset类来处理字节序列与字符序列的转换。

Charset类提供 forName()方法创建Charset实例。

Charset charset = Charset.forName("GBK");

 

Charset类提供如下方法用于编码与解码:

        CharBuffer decode(ByteBuffer bb) // 将ByteBuffer中的字节序列转换为字符序列
        ByteBuffer encode(CharBuffer cb) // 将CharBuffer中的字符序列转换为字节序列
        ByteBuffer encode(String str)    // 将String中的字符序列转换为字节序列

 

 

示例如下:

        // 创建GBK字符集对象
        Charset charset = Charset.forName("GBK");
        // 将字符串序列转为字节序列
        ByteBuffer  byteBuffer = charset.encode("天空sky");
        // 将字节序列转为字符序列
        CharBuffer charBuffer = charset.decode(byteBuffer);
        System.out.println(charBuffer);

 

posted on 2018-08-09 19:26  Deltadeblog  阅读(1638)  评论(0编辑  收藏  举报

导航