jTextArea 的读取方法使 BufferedReader 为空
read method for jTextArea makes BufferedReader null
我正在尝试对 BufferedReader 中的 jTextArea 使用读取方法。它有效,我的文本成功出现在 jTextArea 中。但在使用 read 方法后,它使 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" 是我的实例变量。这个变量没有问题,它也可以正常工作。
BufferedReader br
对象读取结束。所以,br
不是 null
,而是当前行,您正试图通过 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());
}
我正在尝试对 BufferedReader 中的 jTextArea 使用读取方法。它有效,我的文本成功出现在 jTextArea 中。但在使用 read 方法后,它使 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" 是我的实例变量。这个变量没有问题,它也可以正常工作。
BufferedReader br
对象读取结束。所以,br
不是 null
,而是当前行,您正试图通过 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());
}