2015-12-04 86 views
0

我正在研究使用PDF框解析PDF文檔的類,其目的是創建一個帶有結果的文本文件(其名稱爲PdfTestFile.txt)。我們已經知道如何將解析後的文本打印到控制檯,但我不知道如何將結果寫入該類創建的文件(名稱爲PdfTestFile.txt.txt從PDF框輸出到文本文件的打印結果

我試圖用out.print(Text);,但它給了我一個錯誤說:

出解決不了

PdfEasyManager調用類EasySearch中,我們看到上面提到的錯誤。

下面是我的代碼,其中字符串文字是我想打印到文件PdfTestFile.txt什麼:

級「PdfEasyManager」:

import java.io.BufferedWriter; 
    import java.io.FileWriter; 
    import java.io.IOException; 
    import java.io.BufferedReader; 
    import java.io.FileReader; 
    import java.io.BufferedWriter; 
    import java.io.FileWriter; 
    import java.io.PrintWriter; 

    public class PdfEasyManager { 

    static BufferedWriter writer; 

    public static void main(String[] args) throws IOException { 
     //writer = new BufferedWriter(new FileWriter("Evergreen.txt")); 

     EasySearch easysearch = new EasySearch(); 
     // pdfManager.setFilePath("PDFextTEST.pdf"); 
     System.out.println(easysearch.ToText());  
     //out.println(easysearch.ToText()); 
    } 
    }  

級「EasySearch」:

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

    import org.apache.pdfbox.cos.COSDocument; 
    import org.apache.pdfbox.pdfparser.PDFParser; 
    import org.apache.pdfbox.pdmodel.PDDocument; 
    import org.apache.pdfbox.util.PDFTextStripper; 

    import java.io.BufferedReader; 
    import java.io.FileReader; 
    import java.io.BufferedWriter; 
    import java.io.FileWriter; 
    import java.io.PrintWriter; 

    import java.io.IOException; 

    public class EasySearch { 

     private PDFParser parser; 
     private PDFTextStripper pdfStripper; 
     private PDDocument pdDoc ; 
     private COSDocument cosDoc ; 

     private String Text ; 
     private String filePath; 

     private File file; 
     static BufferedWriter writer; 
     //writer = new BufferedWriter(new FileWriter(BLnumber +   (date.toString().substring(4, 10))+ ".org")); 

     public EasySearch() { 

     } 
     //public static void main(String args[]) throws Exception{ 


     public String ToText() throws IOException 



     { 
      this.pdfStripper = null; 
      this.pdDoc = null; 
      this.cosDoc = null; 

      writer = new BufferedWriter(new FileWriter("PdfTestFile.txt")); 
      file = new File("C:/Users/Jon Smith/Desktop/Sample.pdf"); 
      parser = new PDFParser(new FileInputStream(file)); 

      parser.parse(); 
      cosDoc = parser.getDocument(); 
      pdfStripper = new PDFTextStripper(); 
      pdDoc = new PDDocument(cosDoc); 
      pdDoc.getNumberOfPages(); 

      pdfStripper.setStartPage(1);// reading text from page 1 
       // pdfStripper.setEndPage(10);// to 10  
      pdfStripper.setEndPage(pdDoc.getNumberOfPages());// if you want to get text from full pdf file use this code 



      Text = pdfStripper.getText(pdDoc); 
      out.print(Text); //this is the line that gives me the error 
      return Text; 


     } 

    public void setFilePath(String filePath) { 
     this.filePath = filePath; 
    } 


    } 

回答

0

您正在使用out,這不在您的班級中。使用System.out.print(Text)

0

感謝您的幫助,但

writer.write(文本);

解決了我的問題