?
class="java">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 Document PDDocument document = null; try{ document = PDDocument.load(pdfFile); if(pdfFile.length()>4){ textFile = pdfFile.substring(0, pdfFile.length()-4) + ".txt"; } // 文件输入流,写入文件到textFile output = 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