2017-04-01 4 views
0

Ich versuche, Lese-Methode für jTextArea aus BufferedReader zu verwenden. Es funktioniert und mein Text erscheint erfolgreich in jTextArea. aber nach der read-Methode macht BufferedReader null. Hier ist mein Beispielcode:Lese-Methode für jTextArea macht BufferedReader null

private void Calculate() throws IOException{ 
     BufferedReader br = new BufferedReader(new FileReader(file)) ; 

      jTextArea.read(br, "jTextArea"); 

      System.out.println(br.readLine()); 
} 

Als ich dieses "jTextArea.read (br, "Kommentar aus JTextArea");" println funktioniert ordnungsgemäß und druckt die erste Zeile aus. Aber im Normalfall wird Null ausgegeben. P.S: "Datei" ist meine Instanzvariable. Es gibt kein Problem mit dieser Variable, es funktioniert auch richtig.

Antwort

1

BufferedReader br Objekt hat nach dem Lesen sein Ende erreicht. Also, nicht die br ist null, aber es ist die aktuelle Zeile, die Sie versuchen, von br.readLine() zu lesen. Andernfalls würde ein NullPointerException auf den Aufruf br.readLine() geworfen werden. Sie müssen BufferedReader neu zu initialisieren und bekam die erste Zeile gedruckt:

private void Calculate() throws IOException { 
    BufferedReader br = new BufferedReader(new FileReader(file)); 
    jTextArea.read(br, "jTextArea"); 
    br = new BufferedReader(new FileReader(file)); 
    System.out.println(br.readLine()); 
} 
+0

Oww, wie ich das verpasst. Vielen Dank! – Joshgun

+0

Gut zu helfen! Viel Glück beim Programmieren! –