Java字符编码操作

来源:互联网 发布:淘宝买彩票靠谱吗 编辑:程序博客网 时间:2024/06/05 10:10
public class HelloWorld{public static void main(String[] ages) throws Exception{String s="呵呵Hh";//转换成字节序列用的是项目默认的编码GBKbyte[]bytes=s.getBytes();for (byte b:bytes) {//把字节(转换成了int)以16进制的方式显示System.out.print(Integer.toHexString(b&0xff)+" ");}System.out.println();byte[]bytes2=s.getBytes("gbk");//gbk编码中文占用2个字节,英文占用1个字节for (byte b:bytes2) {//把字节(转换成了int)以16进制的方式显示System.out.print(Integer.toHexString(b&0xff)+" ");}System.out.println();byte[]bytes3=s.getBytes("utf-8");//utf-8编码中文占用3个字节,英文占用1个字节for (byte b:bytes3) {//把字节(转换成了int)以16进制的方式显示System.out.print(Integer.toHexString(b&0xff)+" ");}System.out.println();//Java是双字节编码utf-16bebyte[]bytes4=s.getBytes("utf-16be");//utf-16be编码中文占用2个字节,英文占用2个字节for (byte b:bytes4) {//把字节(转换成了int)以16进制的方式显示System.out.print(Integer.toHexString(b&0xff)+" ");}System.out.println();/* * 当你的字节序列是某种编码时,这个时候想把字节序列变成字符串时, * 也需要用这种编码方式,否则会出现乱码 */String str1=new String(bytes4);//用项目默认的编码System.out.println(str1);String str2=new String(bytes4,"utf-16be");System.out.println(str2);}}

0 0
原创粉丝点击