我想使用pdfbox从PDF文件中提取文本,但不是作为命令行工具,而是在我的Java应用程序中。我正在使用jsoup下载pdf。使用pdfbox从PDF文件中提取文本
res = Jsoup
.connect(host+action)
.ignoreContentType(true)
.data(data)
.cookies(cookies)
.method(Method.POST)
.timeout(20*1000)
.execute();
// prepare document
InputStream is = new ByteArrayInputStream(res.bodyAsBytes());
PDDocument pdf = new PDDocument();
pdf.load(is,true);
// extract text
PDFTextStripper stripper = new PDFTextStripper();
String text = stripper.getText(pdf);
// print extracted text
System.out.println(text);
此代码仅打印空行。当我这样做:
System.out.println(res.body());
它打印PDF文件输出是这样的:
%PDF-1.4
%����
6 0 obj
<<
/Filter /FlateDecode
/Length 1869
>>
stream
x��X�n��
...
<<
/Size 28
/Info 27 0 R
/Root 26 0 R
>>
startxref
20632
%%EOF
所以,我相信,在PDF下载正确的 - 只是这个PDF剥离器不工作...
-------------------------------------- --------编辑
解决了这个问题 - 工作代码在这里http://thottingal.in/blog/2009/06/24/pdfbox-extract-text-from-pdf/
也许[此](http://thottingal.in/blog/2009/06/24/pdfbox-extract-text-from-pdf/)可以帮助你开始...我从来没有与** jsoup **和** pdfbox **所以我没有帮助,但我肯定会尝试** pdfbox **,因为我一直在测试** itextpdf reader **来提取文本。 – WeloSefer
谢谢,这就是我正在寻找 - 它现在的作品:) – user606521
太好了。如果你可以回答你自己的问题供以后使用,这将是很好的.. – WeloSefer