用java如何把unicode码转成汉字?

Python08

用java如何把unicode码转成汉字?,第1张

java中将unicode码转换成汉字的方式是直接使用string类型,打印即可:

String ascii="\u4f01\u4e1a"//这两个unicode码就是企业的

System.out.println(ascii)//打印出来

运行结果:

企业

Unicode只有一个字符集,中、日、韩的三种文字占用了Unicode中0x3000到0x9FFF的部分 Unicode目前普遍采用的是UCS-2,它用两个字节来编码一个字符, 比如汉字"经"的编码是0x7ECF,注意字符编码一般用十六进制来 表示,为了与十进制区分,十六进制以0x开头,0x7ECF转换成十进制 就是32463,UCS-2用两个字节来编码字符,两个字节就是16位二进制, 2的16次方等于65536,所以UCS-2最多能编码65536个字符。

java 的char 和String 本身就是unicode/UCS-2标准的。

转换其他字符编码主要用于输入和输出,Java环境内不用其他编码。

输出时转换成gb18030只要

byte[] a="字符串写成gb18030".getBytes("GB18030")

outputstream.write(a)

1.在C++中,char是基础数据类型,8位,1个字节。byte不是基础数据类型,一般是typedef unsigned char byte这样子的,也就是说,byte其实是unsigned char类型,那么也是8位,1个字节。不同的是,char可以表示的范围是-128-127,而byte可以表示的范围是0-255。2.在Java中在java中,char和byte都是基础数据类型,其中的byte和C++中的char类型是一样的,8位,1个字节,-128-127。但是,char类型,是16位,2个字节,'\u0000'-'\uFFFF'。为什么java里的char是2个字节?3.因为java内部都是用unicode的,所以java其实是支持中文变量名的,比如string 世界 = "我的世界"这样的语句是可以通过的。4.补充:C++中,某些数据占多少位,多少字节,是与机器操作系统,硬件,有关系的。而java中,是与操作系统,硬件无关的,因为java是运行在虚拟机上的,所以数据大小都是固定的。java中的long是固定8字节,64位;int是4字节,32位