本教程操作環(huán)境:windows7系統(tǒng)、java10版,DELL G3電腦。
1.說(shuō)明
字符流:就是在字節(jié)流的基礎(chǔ)上,加上編碼,形成的數(shù)據(jù)流
字符流最基礎(chǔ)的兩個(gè)類就是 Reader和 wirter,根據(jù)這兩個(gè)派生而來(lái)類都含有read()和writer()的基本方法。
2.Reader
提供的主要數(shù)據(jù)操作方法如下:
CharReader和SringReader是兩種基本的介質(zhì)流,它們分別將Char數(shù)組、String中讀取數(shù)據(jù)。
PipedReader 是從與其它線程共用的管道中讀取數(shù)據(jù)。
BufferedReader很明顯是一個(gè)裝飾器,它和其他子類負(fù)責(zé)裝飾其他Reader對(duì)象。
FilterReader是所有自定義具體裝飾流的父類,其子類PushBackReader對(duì)Reader對(duì)象進(jìn)行裝飾,會(huì)增加一個(gè)行號(hào)。
InputStreamReader是其中最重要的一個(gè),用來(lái)在字節(jié)輸入流和字符輸入流之間作為中介,可以將字節(jié)輸入流轉(zhuǎn)換為字符輸入流。FileReader 可以說(shuō)是一個(gè)達(dá)到此功能、常用的工具類,在其源代碼中明顯使用了將FileInputStream 轉(zhuǎn)變?yōu)镽eader 的方法。
3.wirter
提供的主要數(shù)據(jù)操作方法:
CharWriter、StringWriter 是兩種基本的介質(zhì)流,它們分別向Char 數(shù)組、String 中寫(xiě)入數(shù)據(jù)。
PipedWriter 是向與其它線程共用的管道中寫(xiě)入數(shù)據(jù)。
BufferedWriter 是一個(gè)裝飾器為Writer 提供緩沖功能。
PrintWriter 和PrintStream 極其類似,功能和使用也非常相似。
OutputStreamWriter是其中最重要的一個(gè),用來(lái)在字節(jié)輸出流和字符輸出流之間作為中介,可以將字節(jié)輸出流轉(zhuǎn)換為字符輸出流。FileWriter 可以說(shuō)是一個(gè)達(dá)到此功能、常用的工具類,在其源代碼中明顯使用了將OutputStream轉(zhuǎn)變?yōu)閃riter 的方法。
4.字符流的輸入和輸出對(duì)比
以上是java IO字符流用法的介紹,在掌握Reader和 wirter的用法后就可以進(jìn)行對(duì)比,相信學(xué)完后會(huì)對(duì)字符流的分類有了更加深刻的認(rèn)知。更多關(guān)于“Java培訓(xùn)”的問(wèn)題,歡迎咨詢千鋒教育在線名師。千鋒已有十余年的培訓(xùn)經(jīng)驗(yàn),課程大綱更科學(xué)更專業(yè),有針對(duì)零基礎(chǔ)的就業(yè)班,有針對(duì)想提升技術(shù)的好程序員班,高品質(zhì)課程助力你實(shí)現(xiàn)java程序員夢(mèng)想。