如何生成UTF-16汉字编码表

听见汉字编码表,是不是觉得很高大上的样子,好像不是我们一般屌丝能玩得转的东西。其实,我们也不需要去制定标准,只是从系统中获取出来,这却是一件很容易的事情。下面我来分步骤说说,看完这篇文章,你就会说这事情太简单了。

1,概念

UTF-16是Unicode的一种字符编码。UTF是 Unicode TransferFormat,意为Unicode转换格式。UTF-16使用两个字节来编码一个字符,例如字母”a”的编码是0x0061,汉字”经”的编码是0x7ECF。

2,目标

我的目标是将UTF-16的基本平面(2字节表示的字符集)中的汉字表打印出来,这个区间为:0x4E00–0x9FA5。

3,获取的方法

Java就是使用UTF-16字符编码集的,那么,我们就可以使用Java来编程,打印相应字符了。
这是核心啦,说穿了,就是一个简单的Java编程:

public class utf16
//定义类名 
{
public static void main(String[] args)
//开始 main 方法 
{

        int start=0x4e00;
        int end=0x9fa5;
        int index=0;
        char[] chArray=new char[16];

        for(index=start;index<end;index+=16){

            if(index%256==0){   
                //格式打印
                System. out. println(" ");
                System. out. println("U+ 0 1 2 3 4 5 6 7 8 9 A B C D E F" );
                System. out. println("------------- -------------------------------------------------------"    );
            }

            int k=0;
            for(k=0;k<16;k++){
                chArray[k]=(char)(index+k);
            }

            System. out. println(""+Integer.toHexString(index)
                    +" "+chArray[0]
                    +" "+chArray[1]
                    +" "+chArray[2]
                    +" "+chArray[3]
                    +" "+chArray[4]
                    +" "+chArray[5]
                    +" "+chArray[6]
                    +" "+chArray[7]     
                    +" "+chArray[8]
                    +" "+chArray[9]
                    +" "+chArray[10]
                    +" "+chArray[11]
                    +" "+chArray[12]
                    +" "+chArray[13]
                    +" "+chArray[14]
                    +" "+chArray[15]
                    );
        }

    System.exit(0);

}

}
// 程序结束 

4,具体实现

完成了代码,就是编译、运行了:

javac utf16.java
java utf16 > utf16.log

这样,UTF-16汉字编码表就保存到“utf16.log”文件中了,打开看看吧。

后记:

看到这里,你就会说,简单啊,我也会了。不仅会了utf16,我连utf8的汉字编码表,以及GBK的,都可以生成了啊。
温馨提示:要选择恰当的平台,恰当的语言哦。

你可能感兴趣的:(java,unicode,编码,汉字,utf-16)