java基礎之I/O流(一)------------字元流的檔案讀寫操作
一.流的概念:
java的輸入輸出稱為流,流是一組有順序的集合。而流的本質則是資料傳輸
二.流的分類:
1.根據處理的功能分為位元組流(InputStream,OutPutStrean)和字元流(Writer,Reader)
2.根據流的流向可分為輸入流(將外設中的資料讀取到記憶體中)和輸出流(將記憶體中的資料寫到外設中)。
三.字元流寫入檔案的一般步驟:
1.建立FileWrite物件,並寫入檔案的路徑及其名稱.還應注意丟擲IOException異常。
2.通過writer()方法寫入資料
3.通過flush()方法,將寫好的資料儲存至目標檔案類
4.儲存好後注意關閉字元流,字元流一旦被關閉,在呼叫write()和flush()方法會編譯錯誤
注意:
a. 由於close()的異常與FileWriter()異常不一樣,所以可以宣告FileWriter fw = null.
b. close()方法會在內部自動呼叫flush()方法。
c. 只能操作文字檔案,不能操作媒體檔案
四.讀取檔案:
1.常用api:
2.一般讀取檔案步驟:
1.建立FileReader物件。並寫入存在的檔案,丟擲IOException異常
2.設定char陣列. char[] ch = new char[1024]。固定陣列長度
3.通過read()方法,並將char陣列傳進去,返回int型別資料
4.最後再將char轉化為字串。
五.緩衝區的輸入(BufferedWrite)和輸出(BufferedReader)操作:
目的:java為了提高讀寫的效率,可以緩衝各個字元,從而實現字元,陣列和行的高效閱讀與寫入。
原理:緩衝區就是記憶體裡的一塊區域,把資料先存記憶體裡,然後一次性寫入,這樣效率比較高
前提:從其建構函式可以看出,需要有輸入流和輸出流的物件
輸入流緩衝區的主要方法:
測試程式碼:
輸出流緩衝區的主要方法:
測試程式碼:
簡單小練習:複製已有文字檔案寫入到新的目標檔案中: