中英文所占字节数

package com.test;

import java.io.UnsupportedEncodingException;

public class byteCountTest {
   
    public static void printByteCount(String str , String encoding) {
        int length = 0;
        try {
            length = str.getBytes(encoding).length;
        } catch (UnsupportedEncodingException e) {
            length = 0;
        }
        System.out.println(encoding + " : " + length);
    }
   
    public static void main(String[] args) {
        String en = "A";
        String ch = "人";
        printByteCount(en, "GB2312");
        printByteCount(en, "GBK");
        printByteCount(en, "GB18030");
        printByteCount(en, "ISO-8859-1");
        printByteCount(en, "UTF-8");
        printByteCount(en, "UTF-16");
        printByteCount(en, "UTF-16BE");
        printByteCount(en, "UTF-16LE");
        System.out.println("-------------------------");
        printByteCount(ch, "GB2312");
        printByteCount(ch, "GBK");
        printByteCount(ch, "GB18030");
        printByteCount(ch, "ISO-8859-1");
        printByteCount(ch, "UTF-8");
        printByteCount(ch, "UTF-16");
        printByteCount(ch, "UTF-16BE");
        printByteCount(ch, "UTF-16LE");
    }
   
}



结果:

GB2312 : 1
GBK : 1
GB18030 : 1
ISO-8859-1 : 1
UTF-8 : 1
UTF-16 : 4
UTF-16BE : 2
UTF-16LE : 2
-------------------------
GB2312 : 2
GBK : 2
GB18030 : 2
ISO-8859-1 : 1
UTF-8 : 3
UTF-16 : 4
UTF-16BE : 2
UTF-16LE : 2

猜你喜欢

转载自zwmf.iteye.com/blog/1275330