2014-01-17 39 views
0

我試圖從文本文件中讀取文本,並且我已經可以使用system.out.print在系統上打印它。但是,如果我從我在文本文件中讀取的文本中設置了JTextArea的文本,它將顯示「線程中的異常」主「java.lang.NullPointerException」。它實際上在印刷行中運行良好,並且我已經可以閱讀我想要的內容了,但是我無法將此文本放在JTextArea上。我該怎麼辦?讀取文本文件中一行中的特定字符數並將「讀取字符」設置爲JTextArea

這裏是我的代碼:

package mdiforms; 
import java.io.BufferedReader; 
import java.io.FileInputStream; 
import java.io.InputStreamReader; 
public class trylang extends javax.swing.JInternalFrame { 

/** Creates new form trylang */ 
public trylang() { 
    initComponents(); 
} 



@SuppressWarnings("unchecked") 

public static void main(String[] args) throws Exception { 
    BufferedReader br = null; 
    String path = "C:/Users/Pasusani/Desktop/tawa.txt"; 
    try { 
     // change this value 
     FileInputStream fis = new FileInputStream(path); 
     br = new BufferedReader(new InputStreamReader(fis, "UTF-8")); 
     String CurrentLine; 
     while ((CurrentLine = br.readLine()) != null) { 
      processLine(CurrentLine); 


     } 
    } finally { 
     if (br != null) br.close(); 
    } 
} 

public static void processLine(String line) { 
    // skip header & footer 
    //if (line.startsWith("127.0.1.1/dev/sda1")) return; 

    String name = line.substring(0, 1); 
    String year = line.substring(0, 5); 
    System.out.print("Name [" + name + "]\t Year [" + year +"]"); 
    String ewan = "Name [" + name + "]\t Year [" + year +"]"; 
    txt_try.setText(ewan); 

} 

} 
+0

哪裏是NPE?哪一行? – sanbhat

+0

這還不夠。發佈SSCCE來說明問題 – StanislavL

+0

線程「main」中的異常java.lang.NullPointerException at mdiforms.trylang.processLine(trylang.java:110) at mdiforms.trylang.main(trylang.java:91) Java結果: 1 –

回答

2

processLinestatic方法,在這裏我想你需要initComponents();調用txt_try.setText(ewan);

我假設你正在初始化txt_try之前創建的trylang實例,它是在trylang的默認構造函數中調用。

旁註:

請FOLLOW的Java命名約定

txt_try ==> txtTry 
trylang ==> TryLang 
相關問題