这是一个过程。
在这里我添加
这必须有效,但我有这个
java.io.IOException:错误:文件结束,预期行
来自merger2.mergeDocuments()的; < - 这里
我花了一整天时间仍然无法解决它。
这是代码
public static void main(String args[]) {
String tmpPdfPath = tempFolderPath + "\\" + "tempresult.pdf";
OutputStream bout = new BufferedOutputStream(new FileOutputStream(new File(tmpPdfPath)));
System.out.println("temp pdf is written in ::::" + tempFolderPath
+ "\\" + "tempresult.pdf");
merger.setDestinationStream(bout);
merger.mergeDocuments();
String finalPath = tempFolderPath + "\\" + "done.pdf";
PDFBoxParams params = new PDFBoxParams(tmpPdfPath, finalPath);
params.setPageRange(PDFBoxParams.PAGE_RANGE_ALL);
PDFBoxUtil.addMessage(params);
System.out.println("Success!");
//new code
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PDFMergerUtility merger2 = new PDFMergerUtility();
merger2.addSource(PDFBoxUtil.displayTOC("hello"));
merger2.addSource(new ByteArrayInputStream(baos.toByteArray()));
OutputStream bout2 = new BufferedOutputStream(new FileOutputStream(
"C:/hereisthefinal.pdf"));
merger2.setDestinationStream(bout2);
merger2.mergeDocuments();
System.out.println("done! check the pdf!");
}
**好吧我发现了什么。
ByteArrayOutputStream baos = new ByteArrayOutputStream();
这一部分,它必须包含所有以前的pdf数据。但它是空的。
如何将数据提取到此处?