我想将String值转换为十六进制,然后返回到它的ascii值。
当我将它转换为十六进制值时,我正在用字符集进行 - cp424
。
这就是我想要做的事情:
String str = "abcאבג";
String hexString = Hex.encodeHexString(str.getBytes("cp424"));
//some action
String original_value = Hex.decodeHex(hexString.toCharArray()).toString();
我的问题是因为我在转换为十六进制时使用cp424
我需要在转换回来时将其恢复到defult charset。我在很多方面尝试过这种转换,但没有得到正确的值。
怎么办呢?如何从十六进制值中取回原始值
感谢提前。
答案 0 :(得分:1)
使用String(byte[] bytes, String charsetName)
构造函数创建original_value
:
String original_value = new String(Hex.decodeHex(hexString.toCharArray()), "cp424");