1、首先下載一個jar包:pdfbox-app-1.7.1.jar
2、代碼如下:
package com; import java.io.File; import java.io.IOException; import org.apache.pdfbox.util.PDFMergerUtility; /** * PDF格式的圖片合並 * */ public class PdfBox { private static String[] getFiles(String folder) throws IOException { File _folder = new File(folder); String[] filesInFolder; if(_folder.isDirectory()){ filesInFolder = _folder.list(); return filesInFolder; } else { throw new IOException("Path is not a directory"); } } public static void main(String[] args) throws Exception { //pdf合並工具類 PDFMergerUtility mergePdf = new PDFMergerUtility(); String folder = "D:/testFile"; String destinationFileName = "mergedTest.pdf"; String[] filesInFolder = getFiles(folder); for(int i = 0; i < filesInFolder.length; i++){ //循環添加要合並的pdf存放的路徑 mergePdf.addSource(folder + File.pathSeparator + filesInFolder[i]); } //設置合並生成pdf文件名稱 mergePdf.setDestinationFileName(folder + File.separator + destinationFileName); //合並pdf mergePdf.mergeDocuments(); } }
其中注意的是:File.separator
在windows中的文件分隔符是 \ 和 /都可以
但是在Linux中,文件分隔符只能是/
所以用了\\的程序在Linux下會出問題。
而File.separator是系統默認的文件分割符號,屏蔽了這些系統的區別。
用File.separator保證了在任何系統下不會出錯。