1联逻、IO流基本介紹
Java是通過‘流’的方式對數(shù)據(jù)進行操作,而IO(Input Output)流就是用來處理設(shè)備與設(shè)備之間的數(shù)據(jù)傳輸锨推,并且Java用于操作‘流’的對象都在軟件包 java.io 中。
‘流’按照操作對象的不同可分為:字節(jié)流换可、字符流
字節(jié)流:可以操作任何類型的數(shù)據(jù)實現(xiàn)輸入和輸出,例如常見的文本沾鳄、音頻、視頻洞渔、圖片等等。
字符流:只能針對文本實現(xiàn)輸入和輸出磁椒,字符流是在字節(jié)流的基礎(chǔ)上融入了編碼,可以更加方便的對文本進行操作本辐。
‘流’按照流向不同可分為:輸入流、輸出流
因之前又分為字節(jié)流與字符流慎皱,所以共可細分為4類:
字節(jié)流:
字節(jié)輸入流的父類:InputStream
字節(jié)輸出流的父類:OutputStream
字符流:
字符輸入流的父類:Reader
字符輸出流的父類:Writer
2叶骨、理清概念
在接下來的學(xué)習(xí)之前茫多,先了解幾個概念:
1.設(shè)備:IO流中所指的設(shè)備忽刽,即鍵盤(標(biāo)準(zhǔn)輸入)、控制臺(標(biāo)準(zhǔn)輸出)跪帝、內(nèi)存、硬盤斑唬、網(wǎng)絡(luò)等等。
2.輸入輸出與讀寫:可能與我們平時理解恰好相反恕刘,讀取數(shù)據(jù)是輸入數(shù)據(jù)聘裁,例如將數(shù)據(jù)讀取到內(nèi)存,即輸入到內(nèi)存衡便;寫入數(shù)據(jù)是輸出數(shù)據(jù)洋访,例如將數(shù)據(jù)寫入到控制臺谴餐,即輸出到控制臺。
3.編碼:詳見文件的編碼岂嗓。
4.文本、文件與文本文件:
文本:Java內(nèi)的文本實際上是(char)類型的16位無符號整數(shù)厌殉,是字符的Unicode編碼(雙字節(jié)編碼)。
文件:Java在硬盤上的文件是以byte byte byte……形式儲存的器紧,是數(shù)據(jù)的集合楼眷。
文本文件:是指文本序列按照某種編碼方案(utf-8铲汪、utf-16be罐柳、gbk)序列化為byte的存儲結(jié)果。
版權(quán)聲明:歡迎轉(zhuǎn)載齿梁,歡迎擴散,但轉(zhuǎn)載時請標(biāo)明作者以及原文出處士飒,謝謝合作蔗崎! ↓↓↓