请帮我在一个十六进制串转换为Base64转换十六进制字符串为Base64
这里是哪里半寸我得到异常
String hexString = "bf940165bcc3bca12321a5cc4c753220129337b48ad129d880f718d147a2cd1bfa79de92239ef1bc06c2f05886b0cd5d";
private static String ConvertHexStringToBase64(String hexString) {
System.out.println(hexString);
if ((hexString.length()) % 2 > 0)
throw new NumberFormatException("Input string was not in a correct format.");
byte[] buffer = new byte[hexString.length()/2];
int i = 0;
while (i < hexString.length())
{
buffer[i/2] = Byte.parseByte(hexString.substring(i, 2));
i += 2;
}
System.out.println("hexSring"+hexString+"afterconverttobase64"+Base64.encodeBase64String(buffer));
return Base64.encodeBase64String(buffer);
}
我在这里得到一个异常:bf940165bcc3bca12321a5cc4c753220129337b48ad129d880f718d147a2cd1bfa79de92239ef1bc06c2f05886b0cd5d Exception in thread "main" java.lang.NumberFormatException: For input string: "bf" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48) at java.lang.Integer.parseInt(Integer.java:449) at java.lang.Byte.parseByte(Byte.java:151) at java.lang.Byte.parseByte(Byte.java:108) at com.motorola.gst.DecryptTest3.ConvertHexStringToBase64(DecryptTest3.java:38) at com.motorola.gst.DecryptTest3.main(DecryptTest3.java:16)
看起来像它的[这]重复[1] [1]:http://stackoverflow.com/questions/7372268/how-to-convert-hex-to-base64 – banjara