本資源是在網上找的,感覺還不錯,是以記個筆記,以下為位址:
出處位址:http://www.360doc.com/content/12/1009/16/10630456_240458246.shtml;也不知道是不是原問,不過個人覺得受教了
Bufferedreader的用法比inputstream要複雜,但是複雜的存在必然會導緻優勢的存在!我們都知道inputstream是一個位元組一個位元組的讀取,每次讀取都會執行一次IO,我們知道io操作是很費資源的(時間、空間資源),這就必然會導緻程式的效率,而bufferedreader很好的解決這一問題,它可以一次讀取大量的資料,大大減少了io次數,效率也就上來了;
下面來看例子:
Import java.io.BufferedReader; Import java.io.BufferdeWriter; Import java.io.FileNotFoundException; Import java.io.FileReader; Import java.io.FileWriter; Import java.io.IOException; Import java.util.logging.Level; Import java.util.logging.Logger; Public class TestBufferedReader{ Public static void main(String[] args){ FileReader in = null; BufferedReader read = null; String s = null; BufferedWriter writer = null; try{ in = new FileReader(“d:\\java\\test.java”); read = new BufferedReader(in); writer = new BufferedReader(in); while((s = reader.readLine())!=null){ //System.out.println(s); writer.writer(s); //這裡調用newLine()方法是讓輸出和讀取的完全一緻 writer.newLine(); //讓寫入的檔案内容實時顯示。如果不調用可能會看不到寫入的内容 writer.flush(); } }catch(FileNotFoundException ex){ System.out.println(“找不到指定檔案!!”); }catch(IOException e){ System.out.println(“檔案讀取有誤!!”); }finally{ try{ writer.close(); read.close(); }catch(IOException ex){ System.out.println(ex.getMessage()); } } } } |
出處位址:http://www.360doc.com/content/12/1009/16/10630456_240458246.shtml;