如何使用Java读取PDF文件?
我想使用Java从PDF文件读取一些文本数据。 请帮我做这个。
任何帮助表示赞赏。
PDFBox是我find的最好的图书馆,如果你只是做基本的文本提取,它是全面的,非常容易使用。 例子可以在这里find。
它在页面上解释它,但有一点需要注意的是,使用setStartPage()和setEndPage()的开始和结束索引都包含在内。 我第一次跳过这个解释,然后花了一段时间才意识到为什么每次打电话的时候我都回到了一页以上。
Itext是C#的另一种select,虽然我个人从未使用它。 这是比PDFBox更低的水平,所以如果你所需要的只是基本的文本提取,那么不太适合这个工作。
PDFBox包含用于文本提取的工具 。
iText对文本操作有更多的低级支持,但是你必须编写相当数量的代码来获取文本。
iText in Action包含了从PDF中提取文本的局限性,无论使用哪个库(第18.2节:提取和编辑文本),以及为什么库没有文本提取支持的有说服力的解释。 简而言之,编写能处理简单情况的代码相对容易,但基本上不可能从PDF中提取文本。
试试这个工作正常
try { PDDocument document = null; document = PDDocument.load(new File("test.pdf")); document.getClass(); if (!document.isEncrypted()) { PDFTextStripperByArea stripper = new PDFTextStripperByArea(); stripper.setSortByPosition(true); PDFTextStripper Tstripper = new PDFTextStripper(); String st = Tstripper.getText(document); System.out.println("Text:" + st); } } catch (Exception e) { e.printStackTrace(); }
你需要使用pdfbox api。
使用PDF库,如iText 。