1. 程式人生 > >java基礎——I/O流

java基礎——I/O流

位元組流:讀取和寫入資料的時候,以位元組為最小單元進行讀取和寫入操作

字元流:讀取和寫入資料的時候,以字元為最小單元進行讀取和寫入操作,因為每個字元根據編碼不同,所佔用的位元組個數不同,每次讀取和寫入字元時候,是不定長的位元組個數寫入讀取。

輸入流:把資料從其他儲存機制讀入到當前記憶體機制當中
輸出流:把記憶體當中的資料寫出到其他儲存機制當中

1.檔案輸入流 FileInputStream(位元組)
檔案輸入流是對檔案內容讀取操作的類
是以位元組方式進行讀取檔案內容,屬於位元組流

構造方法:


方法摘要:


例項參考:

(一):一個位元組一個位元組的輸入


(二):十個位元組的輸入:


2.檔案輸出流FileoutputStream(位元組)

檔案輸出流是對檔案進行寫入內容操作的類
是以位元組方式進行寫入檔案內容,屬於位元組流

構造方法:


方法摘要:


實力參考:

(一):輸出ASC碼


(二)輸出文字


3.Copy一個檔案

(一):


(二):


4.檔案輸入流FileReader(字元)

檔案字元輸入流是對檔案內容讀取操作的類
是以字元方式進行讀取檔案內容,屬於字元流

構造方法


方法摘要:


例項參考:

(一)


(二)


4.檔案輸出流FileWreter(字元)
檔案字元輸出流是對檔案進行寫入內容操作的類
是以字元方式進行寫入檔案內容,屬於字元流

構造方法


方法摘要


例項參考

(一)


(二)


緩衝流

位元組緩衝輸入/輸出流方法摘要
方法請參考FileInputStream/FileOutputStream方法使用格式

例項參考(位元組)

輸入:


輸出:


(字元)

輸入:


輸出


資料輸入輸出流

檔案流和緩衝流僅僅支援簡單的位元組寫入寫出,支援的讀入寫出方法侷限性比較大
資料流允許應用程式以適當方式將資料以Java基本資料型別寫入和讀出檔案
資料流提供了比檔案流和緩衝流更加豐富的讀入寫出操作
由於資料流底層依然是位元組操作,所以資料流為位元組流型別的拓展包裝流


輸入:


輸出:


物件流

所謂物件流就是將物件進行流化後通過流傳輸,我們可以直接將流化後的物件進行檔案讀寫操作
物件流化就是將java物件轉化為位元組序列
需要進行物件流傳輸的物件所關聯的類必須序列化

序列化:1)需要序列化的類必須實現Serializable介面
2)Serializable介面沒有抽象方法,只是標註該物件可以被序列化
3)沒有實現Serializable介面類的物件是不能通過物件流傳輸的


                      

例項參考