jTextArea的read方法使BufferedReader为null

时间:2017-04-01 10:09:05

标签: java null bufferedreader jtextarea

我试图从BufferedReader中为jTextArea使用read方法。它工作正常,我的文字成功出现在jTextArea中。但在使用read方法后,它使BufferedReader为null。这是我的示例代码:

    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:"文件"是我的实例变量。这个变量没有问题,它也可以正常工作。

1 个答案:

答案 0 :(得分:1)

BufferedReader br对象在阅读后已到达终点。因此,br不是null,而是它的当前行,您br.readLine()试图阅读该行。否则,在调用NullPointerException时会抛出br.readLine()。 您需要重新初始化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());
}