在Java中打包h *等价物

时间:2016-02-15 02:22:34

标签: java perl

服务器端我们有一个Perl脚本,它接收上传的PDF文件并对其执行以下操作,之后数据存储在SQL数据库中:

unpack ('h*', $fileData);

我正在编写一个新的基于Java的模块,它从数据库中获取数据,我需要一些方法将这些数据恢复为PDF文件。 Perl等价物是:

pack ('h*', $FileContents);

是否有可用于Java的等效方法来实现此目的? 注意:我无法对现有服务器端代码进行任何更改。

1 个答案:

答案 0 :(得分:0)

$cars = $this->Car->find('all',array("conditions"=>array("car_id IN"=>  [3,7,10] ),"order"=>"Car.car_id DESC"));

// Takes hex string with low nibble first as produced by Perl's unpack 'h*' // For example, 031323 => 0x30, 0x31, 0x32 public static byte[] hexLoHiStringToByteArray(String s) { int len = s.length(); byte[] data = new byte[len / 2]; for (int i = 0; i < len; i += 2) { data[i / 2] = (byte)( (Character.digit(s.charAt(i+0), 16) << 4) | Character.digit(s.charAt(i+1), 16) ); } return data; } h*上的一个奇怪的选择。)