我从 DB2 表中得到了 blob,我正在将其转换为字节数组,以便我可以使用它。我需要获取字节数组并创建一个PDF
出来了。
这就是我所拥有的:
static void byteArrayToFile(byte[] bArray) {
try {
// Create file
FileWriter fstream = new FileWriter("out.pdf");
BufferedWriter out = new BufferedWriter(fstream);
for (Byte b: bArray) {
out.write(b);
}
out.close();
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
}
}
But the PDF
它创建的不对,它上面有一堆从上到下的黑线。
我实际上能够创建正确的PDF
使用基本相同的流程编写 Web 应用程序。 Web 应用程序和代码之间的主要区别是这一行:
response.setContentType("application/pdf");
所以我知道字节数组是PDF
这是可以做到的,但是我的代码在byteArrayToFile
不会创建一个干净的PDF
.
关于如何让它发挥作用有什么想法吗?
通过发送你的输出FileWriter
正在破坏它,因为数据是字节,并且FileWriter
s 用于书写字符。所有你需要的是:
OutputStream out = new FileOutputStream("out.pdf");
out.write(bArray);
out.close();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)