【问题标题】:how to pass a file path to PdfReader of iText如何将文件路径传递给 iText 的 PdfReader
【发布时间】:2021-02-21 11:03:42
【问题描述】:

我使用 iText 来获取这样的 pdf 内容:

try {
            String parsedText="";
            File file = new File(getApplicationContext().getFilesDir(), "test.pdf");
            PdfReader reader = new PdfReader(String.valueOf(file));
            int n = reader.getNumberOfPages();
            for (int i = 0; i <n ; i++) {
                parsedText   = parsedText+ PdfTextExtractor.getTextFromPage(reader, i+1).trim()+"\n"; //Extracting the content from the different pages
            }
            
            reader.close();
        } catch (Exception e) {
            
            Log.d("heh", String.valueOf(e));

        }

但它返回错误:

/data/user/0/com.clementine.story_project/files/test.pdf not found as file or resource.

我做错了什么?

【问题讨论】:

  • 您确定该文件存在吗?该文件是如何进入该位置的?

标签: java android itext


【解决方案1】:

PdfReader 不接受文件对象,但它接受 InputStream。所以你可以使用下面的代码

 Path path = file.toPath();
 if(Files.exists(path)) {
    PdfReader reader = new PdfReader(Files.newInputStream(path));
   //other operations
 }

另外,在调用流之前添加了一个文件存在条件。

【讨论】:

    猜你喜欢
    • 2019-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-26
    相关资源
    最近更新 更多