【问题标题】:How to read lines from txt file after button press in Java在Java中按下按钮后如何从txt文件中读取行
【发布时间】:2015-01-20 21:51:52
【问题描述】:

我希望每次按下按钮时都能从 txt 文件中读取四行,直到没有更多行要读取。当我第一次按下按钮时,会读取前四行。问题是当我第二次按下按钮时,它不会读取接下来的四行。 txt文件是这样的

one
two
three
four

five
six
seven
eight

我不应该在每次按下按钮时都创建一个 BufferedReader 吗?

public void fnext() {  
    try {
        BufferedReader br = new BufferedReader(new FileReader(fr));

        if(!br.ready()) {
            br.close();
            JOptionPane.showMessageDialog(null, "No more data");
        }

        text = br.readLine() + " ";
        text += br.readLine() + " ";
        text += br.readLine() + " ";
        text += br.readLine() + " ";
        br.readLine();

        p.setText(text);

    } catch (IOException ex) {
        Logger.getLogger(FileHandler.class.getName()).log(Level.SEVERE, null, ex);
    }

}

【问题讨论】:

  • 第二次点击会发生什么?您的“没有更多数据”消息?更重要的是 - 检查使用后关闭阅读器是否有帮助。

标签: java file jbutton bufferedreader


【解决方案1】:

在此函数之外声明 BufferedReader。

我不应该在每次按下按钮时都创建一个 BufferedReader 吗? 是的,如果每次单击按钮时都创建对象,则每次都会读取前 4 行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-09
    • 1970-01-01
    • 1970-01-01
    • 2014-06-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多