无法处理大型 PDF 文件

Unable to process large PDF file

我有大小为 160MB 的 jave 文件。

当我尝试在 PdfReader(Itext 库)中加载它时,它会引发以下错误:

java.io.IOException: Not enough storage is available to process this command

我正在使用 Java 版本 1.5(32 位)。

代码:

PdfReader pdfReader = null;
    try{
            pdfReader = new PdfReader("D://bigfile.pdf");

            //also try using  pdfReader = new PdfReader(new RandomAccessFileOrArray("D://bigfile.pdf"),null);
    }catch(Exception e){
            System.out.println("Error");
            e.printStackTrace();
    }

我设置了以下堆大小参数:

-Xms1000m -Xmx1500m -XX:MaxPermSize=512m

在 PdfReader 中加载文件之前,我正在获取以下堆统计信息:

##### Heap utilization statistics [MB] #####
Used Memory:70
Free Memory:921
Total Memory:992
Max Memory:1016**

我自己的问题回答错了,所以对其他人有帮助。

我已经使用下面的代码解决了问题 (using Document.plainRandomAccess=true;):

PdfReader pdfReader = null;
    try{
            Document.plainRandomAccess=true;
            pdfReader = new PdfReader(new RandomAccessFileOrArray("D://bigfile.pdf"),null);
    }catch(Exception e){
            System.out.println("Error");
            e.printStackTrace();
    }