您的位置:首页 > 编程语言 > Java开发

java如何将一个十六进制字符串转换成ASCII字符串

2014-07-30 12:08 489 查看
废话多直接上代码:
public static String x16toString(String x16 , String CharsetName) throws UnsupportedEncodingException{
if(x16==null || "".equals(x16.trim())){
return "";
}
String tempStr = "";
byte[] b = new byte[x16.length()/2];
for(int i=0; i<x16.length()/2; i++){
tempStr = x16.substring(i*2, i*2+2);
int temp = Integer.parseInt(tempStr, 16);
b[i] = (byte) temp;
}
String restr = new String(b,CharsetName);
return restr;
}


我们运行了看看:

public static void main(String[] args) throws UnsupportedEncodingException{
String x16 = "6563756B65792072656164206163746D6163";
System.out.println(x16toString(x16,"US-ASCII"));
}


输出结果:ecukey read actmac
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: