日期:2014-05-19  浏览次数:20685 次

急救!!字符串转换
有一个16进制的01串,怎么把它转换成对应的字符?如:String s="01110001";对应的16进制数为113,即字母 q .该怎么写?谢谢

------解决方案--------------------
先转换为数值,然后直接当成ASCII码使用,比如:

char c = (char) (Integer.valueOf(s).intValue());
------解决方案--------------------
int a = 0;
for(int i = 0 ; i < s.length();i++){
String ss = s.charAt(i)+"";
int b = Integer.parseInt(ss);
a =a+ b*2;
}
System.out.println(Character.toChars(a));
就会输出q了
------解决方案--------------------
探讨
不得行,有异常。你用我给的那个例子试试,能得……

------解决方案--------------------
探讨

引用:
不得行,有异常。你用我给的那个例子试试,能得……


不知道你的异常是啥,这是我的测试代码:
String s = "01110001";
char c = (char) (Integer.valueOf(s, 2).intValue());
System.out.println("Char: " + c);……

------解决方案--------------------
正解~!!!!