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保证了在任何系统下不会出错。

 

05-28 03:34