zoukankan      html  css  js  c++  java
  • Java基础之PDF文件的合并

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

     

  • 相关阅读:
    五:系统及数据库
    四:WEB源码扩展
    三:搭建安全拓展
    二:数据包扩展
    一:基础入门-概念名词
    LeetCode 11. Container With Most Water
    LeetCode 263. Ugly Number
    LeetCode 10. Regular Expression Matching
    LeetCode 58. Length of Last Word
    LeetCode 53. Maximum Subarray
  • 原文地址:https://www.cnblogs.com/MoreThinking/p/7245433.html
Copyright © 2011-2022 走看看