2015-10-18 56 views
-1

,如果你有這樣的事情bufferedreader readline如何工作?

FileReader fileReader = 
      new FileReader(fileName); 


BufferedReader bufferedReader = 
      new BufferedReader(fileReader); 

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

爲什麼bufferedeader.readline()後的第一個讀取下一行?我感到困惑的是,沒有readnextline方法,我不明白爲什麼readline會繼續讀取文件的其餘部分,而不是無限循環第一行。

+0

它這樣做,所以它更容易閱讀整個文件。 – Meinkraft

+0

根據問題的第二部分:(通常)從流(或閱讀器)讀取實際上從流中移除字符。您只能讀取每個字節或字符一次。 –

回答

1

您可以重寫這:

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

這應該回答你的問題... (點作爲事實的readLine();以及,讀取一個行;前一後,並返回null如果沒有更多的行要閱讀)

相關問題