java IO流-常用流

根據(jù)java類之間的關(guān)系逐哈,整理出java常用IO流之間的UML類圖


初學(xué)UML秽晚,如果有錯(cuò)的話請(qǐng)諒解罢杉,這里面只寫了關(guān)鍵的方法馆衔。

字節(jié)輸入流:InputStream類為所有自己輸入流的父類
主要方法有三個(gè):

int read()
從流里面讀出一個(gè)字節(jié)井誉。不推薦使用
int read(byte[] b)
將數(shù)據(jù)讀入到字節(jié)數(shù)組中蕉扮,并返回所讀的字節(jié)數(shù)
inte read(byte[] b,int off,int len)
off 從哪里開始讀
len讀取多少
將輸入流中最多l(xiāng)en個(gè)數(shù)據(jù)字節(jié)讀入字節(jié)數(shù)組

其他方法:
void close()
關(guān)閉流資源
int available()
返回不受阻塞地從此輸入流讀取的字節(jié)數(shù)
long skip(long n)
跳過和放棄此輸入流中的n個(gè)數(shù)據(jù)字節(jié),該方法有可能失效
boolean markSupported()
測(cè)試此輸入流是否支持mark和reset方法
void mark(int n)
在此輸入流中標(biāo)記當(dāng)前的位置
void reset()
將此流重新定位到對(duì)此輸入流最后調(diào)用mark方法時(shí)的位置颗圣。

字節(jié)輸出流:OutputStream是所有字節(jié)輸出流的父類慢显。
三個(gè)基本的write()方法:
void write(int n)
將指定的字節(jié)寫入此輸出流爪模。
void write(byte[] b)
將b.length個(gè)字節(jié)從指定的字節(jié)數(shù)組寫入此輸出流
void write(byte[] b,int off,int len)
將指定字節(jié)數(shù)組中從偏移量off開始的len個(gè)字節(jié)寫入此輸出流

其他方法:
void close()
關(guān)閉此輸出流并釋放與此流有關(guān)的所有系統(tǒng)資源
void flush()
刷新此輸出流并強(qiáng)制寫出所有緩沖的輸出字節(jié)

文件輸入輸出流:FileInputStream和FileOutputStream,要構(gòu)造一個(gè)FileInputStream,所關(guān)聯(lián)的文件必須存在并且可讀荚藻。

FileInputStream fis = new FileInputStream("demo.java");

要構(gòu)造一個(gè)FileOutputStream,而輸出文件已經(jīng)存在屋灌,則它將被覆蓋

FileOutputStream fos = new FileInputStream("results.dat");

想要以追加的方式寫,則需要一個(gè)額外的參數(shù)应狱,如:

FileOutputStream outfile = new FileOutputStream("results.dat",true);

字符流:Reader和Writer所有字符流的父類型共郭。
java技術(shù)使用Unicode來表示字符串和字符,而且提供16位版本的流疾呻,以便用類似的方法處理字符除嘹。如果構(gòu)造了一個(gè)連接到流的Reader和Writer,轉(zhuǎn)換規(guī)則會(huì)在使用缺省平臺(tái)所定義的字節(jié)編碼和Unicode之間切換岸蜗。
橋梁流:InputStreamReader和OutputStreamWriter(字節(jié)流轉(zhuǎn)換成字符流的轉(zhuǎn)換器)
這兩個(gè)類不是用于直接輸入輸出的尉咕,他是將字節(jié)流轉(zhuǎn)換成字符流的橋轉(zhuǎn)換器,并可以指定編解碼方式璃岳。
逐行讀寫流:BufferedReader/BufferedWriter
以上兩個(gè)都是過濾流年缎,需要用其他的節(jié)點(diǎn)流來作為參數(shù)的構(gòu)造對(duì)象。
BufferedReader的方法:readLine():String铃慷,當(dāng)他的返回值是null時(shí)单芜,就表示讀取完畢了。要注意犁柜,在寫入時(shí)要注意寫換行符洲鸠,否則會(huì)出現(xiàn)阻塞。
BufferedWriter的方法:newLine(),這個(gè)方法會(huì)寫出一個(gè)換行符馋缅。
管道流:線程交互的時(shí)候使用
PipedInputStream/PipedOutputStream
傳送輸出流可以連接到傳送輸入流扒腕,以創(chuàng)建通信管道。傳送輸出流是管道的發(fā)送端萤悴。通常瘾腰,數(shù)據(jù)由某個(gè)線程寫入PipedOutputStream對(duì)象,并由其他線程從連接的PipedInputStream讀取稚疹。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市祭务,隨后出現(xiàn)的幾起案子内狗,更是在濱河造成了極大的恐慌,老刑警劉巖义锥,帶你破解...
    沈念sama閱讀 218,284評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件柳沙,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡拌倍,警方通過查閱死者的電腦和手機(jī)赂鲤,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門噪径,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人数初,你說我怎么就攤上這事找爱。” “怎么了泡孩?”我有些...
    開封第一講書人閱讀 164,614評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵车摄,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我仑鸥,道長(zhǎng)吮播,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,671評(píng)論 1 293
  • 正文 為了忘掉前任眼俊,我火速辦了婚禮意狠,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘疮胖。我一直安慰自己环戈,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評(píng)論 6 392
  • 文/花漫 我一把揭開白布获列。 她就那樣靜靜地躺著谷市,像睡著了一般。 火紅的嫁衣襯著肌膚如雪击孩。 梳的紋絲不亂的頭發(fā)上迫悠,一...
    開封第一講書人閱讀 51,562評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音巩梢,去河邊找鬼创泄。 笑死,一個(gè)胖子當(dāng)著我的面吹牛括蝠,可吹牛的內(nèi)容都是我干的鞠抑。 我是一名探鬼主播,決...
    沈念sama閱讀 40,309評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼忌警,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼搁拙!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起法绵,我...
    開封第一講書人閱讀 39,223評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤箕速,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后朋譬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體盐茎,經(jīng)...
    沈念sama閱讀 45,668評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評(píng)論 3 336
  • 正文 我和宋清朗相戀三年徙赢,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了字柠。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片探越。...
    茶點(diǎn)故事閱讀 39,981評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖窑业,靈堂內(nèi)的尸體忽然破棺而出钦幔,到底是詐尸還是另有隱情,我是刑警寧澤数冬,帶...
    沈念sama閱讀 35,705評(píng)論 5 347
  • 正文 年R本政府宣布节槐,位于F島的核電站,受9級(jí)特大地震影響拐纱,放射性物質(zhì)發(fā)生泄漏铜异。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評(píng)論 3 330
  • 文/蒙蒙 一秸架、第九天 我趴在偏房一處隱蔽的房頂上張望揍庄。 院中可真熱鬧,春花似錦东抹、人聲如沸蚂子。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至稀颁,卻和暖如春馏谨,著一層夾襖步出監(jiān)牢的瞬間别渔,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評(píng)論 1 270
  • 我被黑心中介騙來泰國打工惧互, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留哎媚,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,146評(píng)論 3 370
  • 正文 我出身青樓喊儡,卻偏偏與公主長(zhǎng)得像拨与,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子艾猜,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容