【问题标题】:Java - Error while using PDFTextStreamJava - 使用 PDFTextStream 时出错
【发布时间】:2016-04-15 18:57:29
【问题描述】:

我有一个 PDF 文件,想从中提取文本。我正在使用 PDFTextStream。我从它的文档中得到了这段代码,但它给出了错误。

import com.snowtide.PDF;
import com.snowtide.pdf.Document;
import com.snowtide.pdf.OutputTarget;

public class ExtractText {
  public static void main (String[] args) throws java.io.IOException {
   // String pdfFilePath = args[0];

    Document pdf = PDF.open("data/bill.pdf");
    StringBuilder text = new StringBuilder(1024);
    pdf.pipe(new OutputTarget(text));
    pdf.close();
    System.out.println(text);
  }
}

这是错误:

Exception in thread "main" java.lang.NullPointerException
    at com.snowtide.pdf.e.b(SourceFile:2740)
    at com.snowtide.pdf.e.a(SourceFile:2691)
    at com.snowtide.pdf.e.c(SourceFile:2642)
    at com.snowtide.pdf.e.a(SourceFile:2059)
    at com.snowtide.pdf.e.c(SourceFile:2108)
    at com.snowtide.pdf.e.a(SourceFile:1950)
    at com.snowtide.pdf.e.a(SourceFile:1755)
    at com.snowtide.pdf.e.a(SourceFile:1820)
    at com.snowtide.pdf.e.pipe(SourceFile:468)
    at ExtractText.main(ExtractText.java:12)

我使用的是 PDFTextStream 3.3.1 版。 第 12 行是这样的:

pdf.pipe(new OutputTarget(text));

【问题讨论】:

  • pdf 为空。很可能传递给PDF.open() 的路径不正确。
  • 请发布其他一些错误行,至少是接下来的 5 行
  • @Dazak 这就是全部,没有其他错误。
  • 对不起,但我试图重现错误,但这是不可能的......我创建了一个 java 项目,将相同版本的 PDFTextStream 放在它上面并复制你的代码,它工作得很好......即使pdf文件上没有文字...
  • 好吧,我必须把pdf的整个路径..否则找不到它(在那种情况下java给我一个java.io.FileNotFoundException)

标签: java pdf pdftextstream snowtide


【解决方案1】:

Pdf 文件应该已损坏或其他...无法重现该错误。尝试使用另一个 pdf 文件

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-05
    • 2018-08-11
    • 2013-03-07
    • 1970-01-01
    相关资源
    最近更新 更多