2017-04-01 85 views
0

我想从BufferedReader中为jTextArea使用读取方法。它的工作原理和我的文本成功地出现在jTextArea中。但使用read方法后,它使BufferedReader为空。这里是我的示例代码:jTextArea的读取方法使BufferedReader为空

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

      jTextArea.read(br, "jTextArea"); 

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

当我注释掉这个 “jTextArea.read(BR ”的JTextArea“);” println正常工作并打印出第一行。但在正常情况下,它打印出null。 P.S:“file”是我的实例变量。这个变量没有问题,它也可以正常工作。

回答

1

BufferedReader br对象读完后已达到其结尾。所以,不是brnull,但它是当前行,您正在尝试阅读br.readLine()。否则在致电br.readLine()时会引发NullPointerException。 您需要重新初始化BufferedReader并获得第一行:

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我错过了这个。谢谢! – Joshgun

+0

很高兴帮助!祝你好运! –