gpt4 book ai didi

java - Java 中的 Pack h* 等效项

转载 作者:太空宇宙 更新时间:2023-11-04 12:55:50 25 4
gpt4 key购买 nike

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

unpack ('h*', $fileData);

我正在编写一个新的基于 Java 的模块,用于从数据库获取数据,并且我需要某种方法将此数据恢复到 PDF 文件中。Perl 等效项是:

pack ('h*', $FileContents);

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

最佳答案

// 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* 相对于 H* 来说是一个奇怪的选择。)

关于java - Java 中的 Pack h* 等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35400571/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com