關於java中BufferedReader的read()及readLine()方法的使用注意

 以前學習的時候也沒有太在意,在項目中使用到了才發現呵呵

1.讀取一個txt文件,方法很多種我使用了字符流來讀取(爲了方便)

 

  FileReader fr = new FileReader("f:\\TestJava.java");
   BufferedReader bf = new BufferedReader(fr);

//這裏進行讀取

int b;
   while((b=bf.read())!=-1){
    System.out.println(bf.readLine());
   }

發現每行的第一個字符都沒有顯示出來,原因呢:b=bf.read())!=-1  每次都會先讀取一個字節出來,所以後面的bf.readLine());
讀取的就是每行少一個字節

所以,應該使用

String valueString = null;
   while ((valueString=bf.readLine())!=null){
    
    
    System.out.println(valueString);
   }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章