例如,假设我的 URL 包含以下百分比编码字符: %80
这显然不是 ascii 字符。
如何将此值转换为 Java 中相应的十六进制字符串。我尝试了以下没有运气。结果应该是 80。
public static void main(String[] args) {
System.out.print(byteArrayToHexString(URLDecoder.decode("%80","UTF-8").getBytes()));
}
public static String byteArrayToHexString(byte[] bytes)
{
StringBuffer buffer = new StringBuffer();
for(int i=0; i<bytes.length; i++)
{
if(((int)bytes[i] & 0xff) < 0x10)
buffer.append("0");
buffer.append(Long.toString((int) bytes[i] & 0xff, 16));
}
return buffer.toString();
}