使用 PDF BOX 读取 PDF,下载地址:sourceforge里搜索就有了.
package com.pdfbox.pdf;
import java.io.InputStream;
import org.pdfbox.pdfparser.PDFParser;
import org.pdfbox.util.PDFTextStripper;
/**
* 使用 PDFBOX插件读取PDF
* @author LGF
*
*/
public class ReadPDF {
public static void main(String[] args) throws Exception {
//获取输入流
InputStream input = getInputStream("MyBatis3.2.2中文官方文档.pdf");
//创建解析对象
PDFParser parser = new PDFParser(input);
//解析
parser.parse();
//创建 PDFTextStripper 对象
PDFTextStripper ts = new PDFTextStripper();
System.out.println("start page :" + ts.getStartPage());
System.out.println("end page :" + ts.getEndPage());
//获取文本
String text = ts.getText(parser.getPDDocument());
String[] texts = text.split("\r\n");
int index = 1;
/*
* 如果你想一行一行的读取怎么办?
* Ok ,可以加入以下代码,分割就好了
*/
for (String string : texts) {
System.out.println(index+":"+string);
index++;
if (index==100)return;
}
//释放资源
input.close();
}
/**
* 获取 class path 中的文件流
* @param name 名称
* @return InputStream
*/
public static InputStream getInputStream(String name){
return Thread.currentThread().getContextClassLoader().getResourceAsStream(name);
}
}