这是一个将十六进制转换为字符串的代码,但它工作正常,直到字符串的大小不超过62个字符?java.lang.StringIndexOutOfBoundsException
public static String hexToString(String hex)
{
StringBuilder output = new StringBuilder();
for (int i = 0; i < hex.length(); i+=2)
{
String str = hex.substring(i, i+2);
output.append((char)Integer.parseInt(str, 16));
}
return(output.toString());
}
java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:在java.lang.String.substring(未知来源) 在HEX.hexToString(HEX.java:36) 在HEX.main(HEX.java:56)
它必须输入,给我们举例 –
字符串hex1 =“234c02ecbbfbafa3ed18510abd11fa724fcda2018a1a8342cf064bbde548d” –
这是61个字符,并在你的周期,你问字符61 + 62最后一次迭代..那就是问题所在。你究竟在努力实现什么? –