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