String s="00110001"
是一个包含十六进制数31
的字符串。我想知道的是如何将其转换为字符串String a="1"
。 (由于1
的ASCII代码为49
,而hexa中的49
为31
。)
答案 0 :(得分:3)
试试这个:
String hex = "";
for(int i=0; i<=s.length() - 4; i+=4) {
hex += Integer.parseInt(s.substring(i, i+4), 2) + "";
}
System.out.println((char)Integer.parseInt(hex, 16));
答案 1 :(得分:2)
首先使用Integer.parseInt(string,radix)将数字转换为十进制。
int dec = Integer.parseInt(s, 2); //This will give you the value 49
System.out.println((char)dec);
此外,您的问题中的更正:00110001是十进制的31