如何使用Java阅读PDF文件?

新手上路,请多包涵

我想使用 Java 从 PDF 文件中读取一些文本数据。我怎样才能做到这一点?

原文由 yohan.jayarathna 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 642
2 个回答

PDFBox 是我为此目的找到的最好的库,它很全面,如果您只是进行基本的文本提取,它真的很容易使用。可以在 此处 找到示例。

它在页面上对其进行了解释,但需要注意的一件事是使用 setStartPage() 和 setEndPage() 时的开始索引和结束索引 包含在内。我第一次跳过了那个解释,然后我花了一段时间才意识到为什么我每次打电话都得到不止一页的回复!

Itext 是另一种也适用于 C# 的替代方法,尽管我个人从未使用过它。它比 PDFBox 级别更低,因此如果您只需要基本的文本提取,则不太适合这项工作。

原文由 Michael Berry 发布,翻译遵循 CC BY-SA 3.0 许可协议

使用 Apache PDFBox 它是这样的:

 import java.io.File;
import java.io.IOException;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;
import org.apache.pdfbox.text.PDFTextStripperByArea;

PDDocument document = PDDocument.load(new File("test.pdf"));
if (!document.isEncrypted()) {
    PDFTextStripper stripper = new PDFTextStripper();
    String text = stripper.getText(document);
    System.out.println("Text:" + text);
}
document.close();

原文由 Sachin 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题