【发布时间】:2016-10-12 02:32:09
【问题描述】:
我正在尝试编写以下程序的逆向程序以从我拥有的 HEX 值中获取字节。发现很难做到。有什么帮助吗?
private static String bytesToHex(byte[] bytes) {
char[] hexChars = new char [bytes.length *2];
for (int i=0; i< bytes.length; i++) {
int v = bytes[i] & 0xFF;
hexChars[i*2] = HEX_ARRAY[v >>>4];
hexChars[i*2 + 1] = HEX_ARRAY[v & 0x0F];
}
return new String(hexChars);
}
将 HEX_ARRAY 视为 char[] HEX_ARRAY = "0123456789ABCDEF".toCharArray();
我更愿意做这个 python 但即使是 Java 也应该没问题
【问题讨论】:
-
那么是什么阻止了你。
-
欢迎来到 StackOverflow。如果您需要帮助,您将需要发布您迄今为止尝试过的内容,并解释为什么它不起作用。见How to ask
-
我强烈建议不要使用自己的十六进制/字符串/字节转换器,而是使用已经为此目的构建的众多库之一。省去了很多麻烦。
-
我刚刚发现 python 有一个库 binascci,我可以使用以下代码:
import binascii binascii.hexlify('ax')