关于编码

// 英文 -> ascII码
        String str1 = "abc123";
        // String -> byte[]
        byte[] by1 = str1.getBytes();
        System.out.println(Arrays.toString(by1));
        
        // 中文 -> 二进制数据 (由采用的编码方式决定)
        // utf-8
        // gbk gb2312
        
        String str2 = "我爱你";
        byte[] by2 = str2.getBytes();// 默认是UTF-8
        System.out.println(Arrays.toString(by2));
        
        // UTF-8
        // [-26, -120, -111, -25, -120, -79, -28, -67, -96]
        byte[] by3 = str2.getBytes("UTF-8");// 
        System.out.println(Arrays.toString(by3));
        
        byte[] by4 = str2.getBytes("GBK");// 
        System.out.println(Arrays.toString(by4));
        // GBK
        //[-50, -46, -80, -82, -60, -29]
        
        // 如果采用GBK方式保存         我爱你3个字    需要6个字节
        // 如果采用UTF-8方式保存      我爱你3个字    需要9个字节

猜你喜欢

转载自blog.csdn.net/qq_15204179/article/details/81867346