【问题标题】:How does bufferedreader readline work? [duplicate]bufferedreader readline 是如何工作的? [复制]
【发布时间】:2016-01-17 00:55:45
【问题描述】:

如果你有这样的事情

FileReader fileReader = 
            new FileReader(fileName);


BufferedReader bufferedReader = 
            new BufferedReader(fileReader);

while((line = bufferedReader.readLine()) != null) {
    System.out.println(line);
}   

为什么 bufferedeader.readline() 在第一行之后读取下一行?令我困惑的是没有 readnextline 方法,我不明白为什么 readline 会继续读取文件的其余部分而不是无限循环第一行。

【问题讨论】:

  • 这样做是为了更容易阅读整个文件。
  • 根据您问题的第二部分:(通常)从流(或阅读器)读取实际上会从流中删除字符。每个字节或字符只能读取一次。

标签: java


【解决方案1】:

您可以将其重写为:

line = bufferedReader.readLine()
while (line != null) {
  ... print ...
  line = bufferedReader.readLine();

这应该回答你的问题...... (重点是 readLine(); 好吧,读取一行;在另一行之后;如果没有更多行要读取,则返回 null)

【讨论】:

    猜你喜欢
    • 2015-05-26
    • 2015-09-29
    • 1970-01-01
    • 2013-12-16
    • 1970-01-01
    • 2013-03-09
    • 2016-01-08
    • 2021-02-14
    • 1970-01-01
    相关资源
    最近更新 更多