使用Apache PDFBox转换PDF文件为Text文件
2010-05-14 13:47
465 查看
代码如下:
参考资料:http://book.csdn.net/bookfiles/312/10031212843.shtml
另一个Java支持的PDF包:http://www.foolabs.com/xpdf/download.html
package com.test; import java.io.File; import java.io.FileOutputStream; import java.io.OutputStreamWriter; import java.io.Writer; import java.net.MalformedURLException; import java.net.URL; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.util.PDFTextStripper; public class Test { public static void main(String[] args) throws Exception { createTextFile("C://123.pdf", "C://123.txt", "UTF-8", false); } /** * @param pdfFile PDF文件 * @param textFile Text文件 * @param encoding 编码方式 * @param sort 是否排序 * @throws Exception */ public static void createTextFile(String pdfFile, String textFile, String encoding, boolean sort) throws Exception { // 开始提取页数 int startPage = 1; // 结束提取页数 int endPage = Integer.MAX_VALUE; // 文件输入流,生成文本文件 Writer output = null; // 内存中存储的PDF Document PDDocument document = null; try { try { // 首先当作一个URL来装载文件,如果得到异常再从本地文件系统//去装载文件 URL url = new URL(pdfFile); document = PDDocument.load(url); // 获取PDF的文件名 String fileName = url.getFile(); // 以原来PDF的名称来命名新产生的txt文件 if (fileName.length() > 4) { File outputFile = new File(fileName.substring(0, fileName.length() - 4) + ".txt"); textFile = outputFile.getName(); } } catch (MalformedURLException e) { // 如果作为URL装载得到异常则从文件系统装载 document = PDDocument.load(pdfFile); } // 文件输入流,写入文件倒textFile output = new OutputStreamWriter(new FileOutputStream(textFile), encoding); // PDFTextStripper来提取文本 PDFTextStripper stripper = null; stripper = new PDFTextStripper(); // 设置是否排序 stripper.setSortByPosition(sort); // 设置起始页 stripper.setStartPage(startPage); // 设置结束页 stripper.setEndPage(endPage); // 调用PDFTextStripper的writeText提取并输出文本 stripper.writeText(document, output); } finally { if (output != null) { // 关闭输出流 output.close(); } if (document != null) { // 关闭PDF Document document.close(); } } } }
参考资料:http://book.csdn.net/bookfiles/312/10031212843.shtml
另一个Java支持的PDF包:http://www.foolabs.com/xpdf/download.html
相关文章推荐
- 使用开源包pdfbox将pdf文件批量转换成txt文件
- Java使用PDFBox操作PDF文件
- java使用pdfbox操作pdf文件示例
- APache PDFbox API使用(3)----如何得到一个带表单的PDF文件的表单结构
- JAVA使用pdfbox将pdf转换成图片
- 使用PDFBox提取PDF文件中文本
- PHP使用Image Magick将PDF文件转换为JPG文件的方法
- php使用Image Magick将PDF文件转换为JPG文件的方法
- java仿百度文库-使用SWFTools转换pdf文件
- PDF转换器使用方法分享:Word文件怎么转换成PDF格式
- 如何使用SWFTools 命令 将pdf文件转换为swf文件,并进行在线浏览该pdf文件
- 在线怎么将pdf文件转换成word文档转换器使用
- Java 使用 pdfbox 读取 PDF文件中的文本
- 使用PDFBox读取pdf文件
- pdf文件使用什么工具可转换成图片
- 使用Adobe Acrobat 7.0 Professional将一个网页转换为PDF文件
- 使用pdfbox-2.0.1.jar将pdf转换成图片,并且可自定义图片大小
- 使用迅捷pdf虚拟打印机可以将excel转换成pdf文件吗?
- Apache PDFbox创建PDF文件
- java仿百度文库-使用SWFTools转换pdf文件