Api pdfbox-app-2.0.2 如何拆分pdf文件?

Api pdfbox-app-2.0.2 How I can to split pdf file?

我想拆分一个PDF文件,我写了代码,没有任何错误,但是没有功能,我没有收到文件。我的 Pdf 文档有 3 页,我希望在我的桌面上显示一页的三个文件。

import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
import org.apache.pdfbox.multipdf.Splitter;
import org.apache.pdfbox.pdmodel.PDDocument;

public class CutPDF {

    private static File file ;
    private static String filePath = "C:\Users\Desktop\EmailTest.pdf";


    public static void main(String[] args) throws IOException {

        file = new File(filePath);
        PDDocument document;
        document = PDDocument.load(file);

        Splitter splitter = new Splitter();
        List<PDDocument> listOfSplitPages;
        listOfSplitPages = splitter.split(document);
        Iterator<PDDocument> iterator = listOfSplitPages.listIterator();

        // I am using variable i to denote page numbers. 
        int i = 1;
        while(iterator.hasNext()){
            PDDocument pd = iterator.next();
                // Saving each page with its assumed page no.
                pd.save("C:\Users\Desktop " + i++ + ".pdf");
        }        
    }    
}

您的代码创建了名为

的文件
c:\users\desktop 1.pdf
c:\users\desktop 2.pdf
c:\users\desktop 3.pdf

即p.

后缺少“\”

因此正确的代码应该是

pd.save("C:\Users\Desktop\" + i++ + ".pdf");

pd.save(new File("C:\Users\Desktop", i++ + ".pdf"));

注意2.0.2的拆分有问题,文件会太大。如果您要拆分多个页面,请使用 2.0.1 或 2.0.3(当它出来时,即在几个月/几周内)。