我有一个像 1001001 100000 1110011 1100001 1101001 1100100 100000 1100110 1110101 1100011 1101011 100000 1000111 1000001 1001110 1000101 1010011 1001000
我想把他们变成 String
. 有一些源代码,我已经尝试从这个链接没有工作。每次我都会犯同样的错误。
public static String binaryToText(String binaryString) {
StringBuilder stringBuilder = new StringBuilder();
int charCode;
for (int i = 0; i < binaryString.length(); i += 8) {
charCode = Integer.parseInt(binaryString.substring(i, i + 8), 2);
String returnChar = Character.toString((char) charCode);
stringBuilder.append(returnChar);
}
return stringBuilder.toString();
}
这是错误
Process: com.binary, PID: 4784
java.lang.NumberFormatException: Invalid int: "1111001 "
at java.lang.Integer.invalidInt(Integer.java:138)
at java.lang.Integer.parse(Integer.java:410)
at java.lang.Integer.parseInt(Integer.java:367)
at com.binary.MainActivity.binaryToText(MainActivity.java:97)
1条答案
按热度按时间js5cn81o1#
问题是这组位的长度并不都相同。所以帮你自己一个忙,不要只数步
split
那根绳子" "
并单独处理每个位组: