如何在 Java 中使用 BufferedReader 读取下一行?

How do I read next line with BufferedReader in Java?

我有一个文本文件。我想逐行读取它并把它变成一个二维数组。我写了如下内容:

BufferedReader br = new BufferedReader (new FileReader ("num.txt"));
String line = br.readLine();

while( line != null) {                
    System.out.printf(line);  
}

这变成了一个无限循环。在完成阅读和打印一行后,我想转到下一行。但是我不知道该怎么做。

BufferedReader br = new BufferedReader (new FileReader ("num.txt"));
String line = br.readLine();

while( line != null) {

    System.out.printf(line);

    // read the next line
    line = br.readLine();
}

... 或读取 while 条件中的行(如 rgettman 指出的那样):

String line;
while( (line = br.readLine()) != null) {

    System.out.printf(line);

}

你只看了第一行。 line 变量在 while 循环中没有改变,导致无限循环。

while条件下读取下一行,所以每次迭代读取一行,改变变量。

BufferedReader br = new BufferedReader (new FileReader ("num.txt"));
String line;

while( (line = br.readLine() ) != null) {
    System.out.printf(line);
}