2016-11-30 78 views
0

我在使用Apache Tika解析大型PDF文件時遇到了一些問題。 文件大小接近5 MB。使用Apache Tika解析大型PDF文件

這裏是代碼:

package com.ibm.lnk.processor; 

import java.io.File; 
import java.io.FileInputStream; 
import java.io.FileNotFoundException; 
import java.io.IOException; 
import java.io.InputStream; 

import com.ibm.lnk.utility.LNKProcessorUtility; 

public class TestClient { 
public static void main(String[] args) throws IOException { 
    InputStream inputStream=null; 
    try { 
     inputStream=new FileInputStream(new File("C:\\CognitiveAssignment\\ProjectSpecificMaterials\\C3Portal\\TestData\\T1\\Anupam Sarkar_IBM_CV.pdf")); 
     String content=LNKProcessorUtility.getTextContent(inputStream); 
     System.out.println(content); 
    } catch (Exception e) { 
     System.out.println(e); 
    }finally { 
     inputStream.close(); 
    } 
} 
} 

而且我收到的例外是:

org.apache.tika.exception.TikaException:無法提取所有的PDF內容

任何人都可以幫我解決這個問題嗎?

+1

什麼是完整的例外,包括堆棧跟蹤? – Gagravarr

+1

你用什麼TIKA版本? –

+0

可能是這樣的:https://issues.apache.org/jira/browse/TIKA-2098。順便說一句,你應該編輯你的問題,包括堆棧跟蹤。這將顯示它是否是相同的問題。 –

回答

0

嘗試使用Apache PDFBOX從PDF文本閱讀

樣本代碼 -

import java.io.File; 
    import java.io.IOException; 
    import org.apache.pdfbox.pdmodel.PDDocument; 
    import org.apache.pdfbox.text.PDFTextStripper; 

    public class PDFTextReader { 

    public static void main(String[] args) throws Exception {  
     File file = new File("<any pdf>"); 
     PDDocument inputDoc= PDDocument.load(file); 
     PDFTextStripper stripper = new PDFTextStripper();   
     System.out.println("Text: " + stripper.getText(inputDoc)); 
     } 
    }