求Unicode转GB312的问题

liushui05 2005-05-27 05:49:42
有字符串B2E2CAD4,其表示的是汉字“测试”两个字,现在要转成“测试”;该怎么写那?
...全文
105 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyingwu 2005-06-07
  • 打赏
  • 举报
回复
public static byte[] hex2byte(String s){
String str="";
byte[] b=new byte[s.length()/2];
for(int i=0,j=0;i<s.length();i+=2,j++){
b[j]=(byte)Integer.parseInt(s.substring(i,i+2),16);
}
return b;
}
Acylas 2005-05-27
  • 打赏
  • 举报
回复
如果是乱码那表示B2E2CAD4这个字符串不是unicode编码的字符串.
本来如果是unicode编码的字符串应该是\u + 四位字符串 + \u + ......
四位一个\u分隔的
huguangwu 2005-05-27
  • 打赏
  • 举报
回复
把16进制转为10进制,然后用char函数得到对应字符
liushui05 2005-05-27
  • 打赏
  • 举报
回复
那个字符串好像不是UNICODE的编码的
liushui05 2005-05-27
  • 打赏
  • 举报
回复
显示是乱码啊
Acylas 2005-05-27
  • 打赏
  • 举报
回复
StringBuffer sb = new StringBuffer();
char c = (char) Integer.parseInt("B2E2", 16);
sb.append(c);
c = (char) Integer.parseInt("CAD4", 16);
sb.append(c);
System.out.println(sb.toString());

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧