這篇文章給大家介紹怎么淺析Java的流,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
淺析Java的流
由于手頭有個項目需要用的Java的輸入輸出操作, 所以,啃了幾天書,對Java的流技術有些了解,不過,還是有很多不是很明白,下面是我看書整理的一些筆記,嚴格的說應該不是原創,我貼出來只是希望對大家有一些幫助
XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" />
1、Java擁有一個完整的流類型,總數超過60,而四個抽象類構成了這些類的基礎
InputStream和OutputStream讀寫以單字節為基礎的字節數據流;
Reader和Writer讀寫以雙字節的Unicode字符為基礎的字節數據流;
2、二進制數據的讀寫
DataInputStream和DataOutputStream
可以完成對所有基本Java類型的讀寫;
FileInputStream和FileOutputStream
對一個磁盤文件涉及的數據流進行輸入輸出處理,是字節級的讀寫操作;
3、Java的流類型中按職責分有兩類:
(1)從文件或者一些特殊地方讀入字節數據(如FileInputStream);
(2)把這些字節數據“組裝”成更有用的數據類型(如DataInputStream、PrintWriter)
要完成具體操作時,需要對流進行組裝處理
4、Java的流不具備預讀和緩沖功能,需要額外處理
BufferInputStram對流進行緩沖處理;
PushbackInputStream對流進行預讀處理;
5、RandomAccessfile隨機存取文件,這個類同時實現了DataInput和DataOutput;
6、文本流,即通過主機環境的工具,人眼能夠辨別的文件內容
由于windows的字串寫入是ASCII格式的,將Unicode編碼寫進一個文本文件,用主機環境的工具,人眼無法辨別文件內容,Java提供一套流過濾器彌補Unicode編碼和本機操作系統采用字符編碼的裂縫。
7、InputStreamReader 特殊的編碼方案輸入字節流轉換為Unicode字符;這個類采用主機默認編碼,在windows中使用ISO 8859-1編碼,即“ASNI”編碼;
OutputStreamWriter 把Unicode字符流轉換為特殊的編碼方案字節流
8、FileReader和FileWriter
對磁盤文件進行讀寫,已經彌補了Unicode編碼和本機編碼的裂縫,可以直接使用
9、寫文本輸出:
二進制寫入數據:DataOutputStream;
文本格式寫入數據:PrintWriter;
讀文本輸入:
二進制讀入數據:DataInputStream;
文本格式讀入數據:BufferReader;
10、其他一些流
如:ZipInputStream和ZipOutputStream
關于怎么淺析Java的流就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。