java读取PDF并进行格式转换
package com.yk.test;import java.io.FileOutputStream;import java.io.OutputStreamWriter;import java.io.Writer;import org.pdfbox.pdmodel.PDDocument;import org.pdfbox.util.PDFTextStripper;/** * 采用PDFBOX读取PDF文件,并进行格式转换 * @author Administrator * */public class PDFBoxTest {public void getText(String file) throws Exception {// 是否排序boolean sort = false;// PDF文件名String pdfFile = file;// 输入文本文件名称String textFile = null;// 编码方式String encoding = "UTF-8";// 开始提取页数int startPage = 1;// 结束提取页数int endPage = Integer.MAX_VALUE;// 文件输入流,生成文本文件Writer output = null;// 内存中存储的PDF DocumentPDDocument document = null;try{document = PDDocument.load(pdfFile);if(pdfFile.length()>4){textFile = pdfFile.substring(0, pdfFile.length()-4) + ".txt";}// 文件输入流,写入文件到textFileoutput = new OutputStreamWriter(new FileOutputStream(textFile), encoding);// 采用PDFTextStripper提取文本PDFTextStripper stripper = new PDFTextStripper();// 设置是否排序stripper.setSortByPosition(sort);// 设置起始页stripper.setStartPage(startPage);// 设置结束页stripper.setEndPage(endPage);stripper.writeText(document, output);}catch(Exception e){e.printStackTrace();}finally{if(output != null){output.close();}if(document != null){document.close();}}}public static void main(String[] args) {try{new PDFBoxTest().getText("D:\\Java线程.pdf");}catch(Exception e){e.printStackTrace();}}}
主要是以下jar包
?
bcmail-jdk14-132.jar
bcprov-jdk14-132.jar
checkstyle-all-4.2.jar
FontBox-0.1.0-dev.jar
PDFBox-0.7.3.jar
相关jar包可以去http://sourceforge.net/projects/pdfbox/postdownload进行下载,我下载的版本是0.7.3