Java String字符串和Unicode字符相互转换代码
java环境安装后jdk的bin目录有个native2ascii.exe可以实现类似的功能,但是通过java代码也可以实现同样的功能。
字符串转换unicodejava方法代码片段:
/** *字符串转换unicode */ publicstaticStringstring2Unicode(Stringstring){ StringBufferunicode=newStringBuffer(); for(inti=0;i<string.length();i++){ //取出每一个字符 charc=string.charAt(i); //转换为unicode unicode.append("\\u"+Integer.toHexString(c)); } returnunicode.toString(); }
unicode转换字符串java方法代码片段:
/** *unicode转字符串 */ publicstaticStringunicode2String(Stringunicode){ StringBufferstring=newStringBuffer(); String[]hex=unicode.split("\\\\u"); for(inti=1;i<hex.length;i++){ //转换出每一个代码点 intdata=Integer.parseInt(hex[i],16); //追加成string string.append((char)data); } returnstring.toString(); }
测试java代码片段:
publicstaticvoidmain(String[]args){ Stringtest="最代码网站地址:www.zuidaima.com"; Stringunicode=string2Unicode(test); Stringstring=unicode2String(unicode); System.out.println(unicode); System.out.println(string); }
输出结果:
\u6700\u4ee3\u7801\u7f51\u7ad9\u5730\u5740\u3a\u77\u77\u77\u2e\u7a\u75\u69\u64\u61\u69\u6d\u61\u2e\u63\u6f\u6d