我有一些Perl代码,我需要在Java中调换。 在这个代码中,我要处理的Perl的pack
。 有没有在Java中的等价功能? Perl代码看起来是这样的:
$somevar = pack "H*", $vartopack;
我有一些Perl代码,我需要在Java中调换。 在这个代码中,我要处理的Perl的pack
。 有没有在Java中的等价功能? Perl代码看起来是这样的:
$somevar = pack "H*", $vartopack;
Perl的pack
/ unpack
功能与自己的一个高度灵活的转换工具语法格式 (在使用H*
这里,这使得它取一个任意长的十六进制字符串作为输入),其中有在Java世界中没有等同的。 然而,翻译...
$somevar = pack "H*", $vartoconvert;
......去渣,例如,你可以使用:
byte[] somevar = javax.xml.bind.DatatypeConverter.parseHexBinary(vartoconvert);
欲了解更多信息,请阅读DatatypeConverter
类引用从Javadoc中。
String hex = "4a616d6573";
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));
}
System.out.println(output);