我正在尝试将文本从.txt文件复制到jtextarea,但出现空指针异常

时间:2018-09-10 04:52:18

标签: java swing nullpointerexception jtextarea

每次我尝试从.txt文件中读取时,都会得到一个NullPointerException。我已经查找了所有内容,但是无论如何都找不到答案。 如果任何人都可以告诉我我做错了,那就太好了。

   public class fileClassOpen implements ActionListener{

    public void actionPerformed(ActionEvent e) {
        int dialog = chooser2.showOpenDialog(Other.this);
        if(dialog == JFileChooser.APPROVE_OPTION) {
            String path = chooser.getSelectedFile().getAbsolutePath();
            try {
                FileReader fw = new FileReader(path);
                BufferedReader br = new BufferedReader(fw);
                while(br.readLine() != null) {
                    txtArea.setText(br.readLine());
                }
            } catch (IOException e1) {
            }
        }
    }
}

2 个答案:

答案 0 :(得分:1)

您两次调用br.readline()。因此,您最终一次只能读两行。也许,这就是为什么假设其他所有方法都抛出NullPointerException的原因。 我会做这样的事情:

String line = "";
while ((line = br.readLine()) != null){
   txtArea.setText(line);
}

此外,切勿在没有适当的catch语句的情况下吞下该异常。

答案 1 :(得分:0)

尝试使用txtArea.append( br.readLine() );代替txtArea.setText(br.readLine()),因为textArea.append(str)将给定的文本附加到文档的末尾。如果给定字符串为null或为空,则不执行任何操作。