我将数据库中的PDF存储为blob。我有一个用例来检索blob文件(PDF)并使用java压缩它。有人可以帮帮我吗?
以下是我的示例代码。我从数据库获取我的pdf作为BLobDomain 我希望它在一个blobfolder中,我已经给出了807.pdf和1285.pdf以下的表示。 多数民众赞成我希望我的blobdomain值是
BlobDomain doc1=(BlobDomain)rowshis[0].getAttribute("Document");
BlobDomain doc2=(BlobDomain)rowshis[1].getAttribute("Document");
StringBuilder sb = new StringBuilder();
sb.append("Test Date");
System.out.println("check----1");
File f = new File("/customer/scratch/HDLtest.zip");
ZipOutputStream out = new ZipOutputStream(newFileOutputStream(f));
System.out.println("check----2");
ZipEntry e = new ZipEntry("BlobFiles/807.pdf");
out.putNextEntry(e);
ZipEntry e11 = new ZipEntry("BlobFiles/1285.pdf");
out.putNextEntry(e11);
System.out.println("check----3");
ZipEntry e1 = new ZipEntry("Test.dat");
out.putNextEntry(e1);
System.out.println("check----4");
byte[] data = sb.toString().getBytes();
out.write(data, 0, data.length);
out.closeEntry();
out.close();
答案 0 :(得分:0)
在添加下一个zip条目之前,您需要编写zip条目的内容。
呼叫顺序应为:
putNextEntry()
- 开始编写新的ZIP文件条目,并将流定位到条目数据的开头。如果仍处于活动状态,则关闭当前条目。 write()
- 将一个字节数组写入当前的ZIP条目数据。 closeEntry()
- 关闭当前的ZIP条目并定位流以写入下一个条目。 putNextEntry()
会自动关闭当前条目。对要添加到zip文件的每个条目重复上述步骤。