使用pdfbox 2.0.X jar提取文本

时间:2019-01-05 13:12:17

标签: java pdfbox text-extraction

我有一个pdf文件的Inputstream。现在,我想从inputStream中提取所有字符串内容。我发现了以下示例。我应该使用第一个还是第二个?两者之间在性能上有什么区别吗? PDFParser在第二个中有什么用?

代码段1:

PDDocument doc = PDDocument.load(is);

PDFTextStripper stripper = new PDFTextStripper();

String result = stripper.getText(doc);

代码段2:

PDFTextStripper stripper = new PDFTextStripper();

PDFParser parser = new PDFParser(newRandomAccessBufferedFileInputStream(stream));

parser.parse();

doc = parser.getPDDocument();

String content = stripper.getText(doc);

先谢谢了!

1 个答案:

答案 0 :(得分:1)

使用第一个代码。第二个代码也可以工作,但是已经过时并且没有什么不同,解析的内容在load()中被调用。速度是一样的。通过使用文件作为参数或字节数组,您将获得最佳结果。使用流将需要PDFBox进行一些额外的缓冲。您的代码无法说明stream的来源;如果它是FileInputStream,则应改用File