【问题标题】:read method for jTextArea makes BufferedReader nulljTextArea 的读取方法使 BufferedReader 为空
【发布时间】:2017-04-01 10:09:04
【问题描述】:

我正在尝试使用 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 正常工作并打印出第一行。但在正常情况下它打印空。 P.S:“文件”是我的实例变量。这个变量没有问题,它也可以正常工作。

【问题讨论】:

    标签: java null bufferedreader jtextarea


    【解决方案1】:

    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());
    }
    

    【讨论】:

    • 哇,我怎么错过了这个。谢谢!
    • 很高兴为您提供帮助!祝你编程好运!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-01
    • 2013-06-12
    • 1970-01-01
    • 2013-10-30
    • 1970-01-01
    相关资源
    最近更新 更多