我是android / java的新手。我想在EditText上的CharSequence中显示一个人类可读的十六进制值字符串。 The code is here。此代码显示十六进制的字符串表示形式,例如:7465737420202020203f7465737420202020202020202020203f7465737420202020202020202020203fd3f7d3f7d3f77f078840ffffffffffff
这就是我想要展示的内容:
test ?test ?test ?Ó÷Ó÷Ó÷ˆ@ÿÿÿÿÿÿ
如何在文本中转换十六进制值。我尝试了许多转换方式,但我遇到了运行时错误或错误的字符。
答案 0 :(得分:4)
你可以这样做:
String a = " 7465737420202020203f7465737420202020202020202020203f7465737420202020202020202020203fd3f7d3f7d3f77f078840ffffffffffff";
a = a.trim();
StringBuffer result = new StringBuffer();
for (int i = 0; i < a.length(); i+=2) {
String sub = a.substring(i, i+2);
int b = Integer.parseInt(sub, 16);
result.append((char)b);
}
System.out.println(result);
此代码考虑到原始字符串始终有效。没有检查。
这是基本想法,希望它有所帮助!