使用 pdfbox 2.0.X jars 提取文本
Text Extraction Using pdfbox 2.0.X jars
我有一个 pdf 文件的输入流。现在我想从 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);
提前致谢!!!
使用第一个代码。第二个代码也可以工作,但是已经过时并且没有什么不同,解析内容在 load()
内调用。速度是一样的。使用文件作为参数或字节数组将获得最佳结果。使用流将需要 PDFBox 做一些额外的缓冲。您的代码没有说明 stream
来自哪里;如果它是 FileInputStream
,那么您应该使用 File
。
我有一个 pdf 文件的输入流。现在我想从 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);
提前致谢!!!
使用第一个代码。第二个代码也可以工作,但是已经过时并且没有什么不同,解析内容在 load()
内调用。速度是一样的。使用文件作为参数或字节数组将获得最佳结果。使用流将需要 PDFBox 做一些额外的缓冲。您的代码没有说明 stream
来自哪里;如果它是 FileInputStream
,那么您应该使用 File
。