資源描述:
《javaio流學(xué)習(xí)總結(jié)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、javaio流學(xué)習(xí)總結(jié)總結(jié)一:javaio流學(xué)習(xí)總結(jié)一、IO流的三種分類方式1.按流的方向分為:輸入流和輸出流按流的數(shù)據(jù)單位不同分為:字節(jié)流和字符流3.按流的功能不同分為:節(jié)點流和處理流二、IO流的四大抽象類:字符流:ReaderWriter字節(jié)流:InputStream(讀數(shù)據(jù))OutputStream(寫數(shù)據(jù))三、InputStream的基本方法intread()throsIOExeption讀取一個字節(jié)以整數(shù)形式返回,如果返回-1已到輸入流的末尾voidlose()throsIOExeption關(guān)閉流釋放內(nèi)存資源longskip(longn)throsIOExeption
2、跳過n個字節(jié)不讀四、OutputStream的基本方法voidrite(intb)throsIOExeption向輸出流寫入一個字節(jié)數(shù)據(jù)voidflush()throsIOExeption將輸出流中緩沖的數(shù)據(jù)全部寫出到目的地五、Writer的基本方法voidrite(int)throsIOExeption向輸出流寫入一個字符數(shù)據(jù)第13頁voidrite(Stringstr)throsIOExeption將一個字符串中的字符寫入到輸出流voidrite(Stringstr,intoffset,intlength)將一個字符串從offset開始的length個字符寫入到輸出流voi
3、dflush()throsIOExeption將輸出流中緩沖的數(shù)據(jù)全部寫出到目的地六、Reader的基本方法intread()throsIOExeption讀取一個字符以整數(shù)形式返回,如果返回-1已到輸入流的末尾七、節(jié)點流類型八、訪問文件之FileInputStream和FileOutputStream繼承基類用于向文件中輸入輸出字節(jié)九、訪問文件之FileReader和FileWriter繼承基類用于向文件中輸入輸出字符----輸出流在構(gòu)造函數(shù)第二個參數(shù)可以設(shè)置true意義為跟在已有文件后進行輸入----此類流會拋出FileNotFoundExeption需要對其進行顯示捕捉十
4、、緩沖流:緩沖流要套接在相應(yīng)的節(jié)點流之上,提高了讀寫的效率。此處理流的構(gòu)造方法都得傳相對應(yīng)的基類類型BufferedReader:提供了readLine方法用于高校讀取一行字符串BufferedWriter:提供了neLine用于寫入一個行分隔符也就是換行第13頁BufferedInputStream沒多大用處BufferedOutputStream沒多大用處十一、轉(zhuǎn)換流:主要作用將字節(jié)流轉(zhuǎn)換成字符流。用處較大!轉(zhuǎn)換流在構(gòu)造時可以指定其編碼集合InputStreamReader需要和InputStream套接OutputStreamWriter需要和OutputStream套接
5、例:OutputStreamWriteros=neOutputStreamWriter(neFileOutputStream(文件路徑);方法例:os.getEnoding();獲得流的編碼方式十二、數(shù)據(jù)流與字節(jié)數(shù)組流:數(shù)據(jù)流主要為實現(xiàn)可以存取Java原始數(shù)據(jù)類型如long,boolean數(shù)據(jù)流是字節(jié)流DataInputStream需要和InputStream套接DataOutputStream需要和OutputStream套接DataInputStream方法:readBoolean()readInt()read()readUTF():網(wǎng)絡(luò)傳輸常用方法讀一個Uniode字符串
6、DataOutputStream方法與DataInputStream基本對應(yīng)為寫的方法此構(gòu)造函數(shù)等于已可以往一個字節(jié)數(shù)組里輸入內(nèi)容BteArraOutputStreambaos=neBteArraOutputStream();此方法為獲取一個字節(jié)數(shù)組方法返回字節(jié)數(shù)組baos.toBteArra();此方法獲取字節(jié)數(shù)組占了多少字節(jié)neBteArraInputStream(一個字節(jié)數(shù)組)。available()1BteArraOutputStreambaos=第13頁2neBteArraOutputStream{16e.printStakTraethrosExeption{5Tt=
7、neT;6t.k=8;7FileOutputStreamfos=neFileOutputStream;9oos.riteObjet;10oos.flush;11oos.lose;1213FileInputStreamfis=neFileInputStream;15TtReaded=ois.readObjet;16Sstem.out.println;1718}19}2021lassT22implementsSerializable23{24inti=10;25intj=9;26doubled=