![JavaIO流學(xué)習(xí)總結(jié)報(bào)告_第1頁(yè)](http://file4.renrendoc.com/view/38193e24eef74e9312e2b8924dac8b48/38193e24eef74e9312e2b8924dac8b481.gif)
![JavaIO流學(xué)習(xí)總結(jié)報(bào)告_第2頁(yè)](http://file4.renrendoc.com/view/38193e24eef74e9312e2b8924dac8b48/38193e24eef74e9312e2b8924dac8b482.gif)
![JavaIO流學(xué)習(xí)總結(jié)報(bào)告_第3頁(yè)](http://file4.renrendoc.com/view/38193e24eef74e9312e2b8924dac8b48/38193e24eef74e9312e2b8924dac8b483.gif)
![JavaIO流學(xué)習(xí)總結(jié)報(bào)告_第4頁(yè)](http://file4.renrendoc.com/view/38193e24eef74e9312e2b8924dac8b48/38193e24eef74e9312e2b8924dac8b484.gif)
![JavaIO流學(xué)習(xí)總結(jié)報(bào)告_第5頁(yè)](http://file4.renrendoc.com/view/38193e24eef74e9312e2b8924dac8b48/38193e24eef74e9312e2b8924dac8b485.gif)
下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
JavaIO流學(xué)習(xí)總結(jié)報(bào)告
流就是字節(jié)序列的抽象概念,能被連續(xù)讀取數(shù)據(jù)的數(shù)據(jù)源和能被連續(xù)寫入數(shù)據(jù)的接收端就是流,流機(jī)制是Java及C++中的一個(gè)重要機(jī)制,通過(guò)流我們可以自由地掌握文件、內(nèi)存、IO設(shè)備等數(shù)據(jù)的流向。而IO流就是用于處理設(shè)備上的數(shù)據(jù),如:硬盤、內(nèi)存、鍵盤錄入等。IO流依據(jù)處理類型的不同可分為字節(jié)流和字符流,依據(jù)流向的不同可分為輸入流和輸出流。
二、字節(jié)流和字符流的區(qū)分:
字符流,由于文件編碼的不同,就有了對(duì)字符進(jìn)展高效操作的字符流對(duì)象,它的原理就是基于字節(jié)流讀取字節(jié)時(shí)去查了指定的碼表。它和字節(jié)流的區(qū)分有兩點(diǎn):1.在讀取數(shù)據(jù)的時(shí)候,字節(jié)流讀到一個(gè)字節(jié)就返回一個(gè)字節(jié),字符流使用了字節(jié)流讀到一個(gè)或多個(gè)字節(jié)(一個(gè)中文對(duì)應(yīng)的字節(jié)數(shù)是兩個(gè),在UTF-8碼表中是3個(gè)字節(jié))時(shí),先去查指定的編碼表,再將查到的字符返回;2.字節(jié)流可以處理全部類型的數(shù)據(jù),如jpg、avi、mp3、wav等等,而字符流只能處理字符數(shù)據(jù)。所以可以依據(jù)處理的文件不同考慮使用字節(jié)流還是字符流,假如是純文本數(shù)據(jù)可以優(yōu)先考慮字符流,否則使用字節(jié)流。
三、IO體系,所具備的根本功能就是讀和寫:
1.字符流
|--Reader(讀)
|--Writer(寫)
Reader
|--InputStreamReader
|--FileReader:用于處理文件的字符讀取流對(duì)象
Writer
|--OutputStreamWriter
|--FileWriter:用于處理文件的字符寫入流對(duì)象
其實(shí)很簡(jiǎn)單就可以看出來(lái),IO體系中的子類名后綴絕大局部是父類名稱,而前綴則是表達(dá)子類特有功能的名稱。
Reader中常見的方法:
|--intread()
讀取一個(gè)字符,并返回讀到的這個(gè)字符,讀到流的末尾則返回-1。
|--intread(char[])
將讀到的字符存入指定的數(shù)組中,返回的是讀到的字符個(gè)數(shù),讀到流的.末尾則返回-1。|--close()
讀取字符其有用的是window系統(tǒng)的功能,就盼望使用完畢后,進(jìn)展資源的釋放。FileReader除了自己的構(gòu)造函數(shù)外沒(méi)有特有的方法:
|--用于讀取文本文件的流對(duì)象。
|--用于關(guān)聯(lián)文本文件。
在讀取流對(duì)象初始化時(shí),必需要指定一個(gè)被讀取的文件,
假如該文件不存在則會(huì)發(fā)生FileNotFoundException特別。
Writer中常見的方法:
|--write()
將一個(gè)字符寫入到流中。
|--write(char[])
將一個(gè)字符數(shù)組寫入到流中。
|--writer(String)
將一個(gè)字符寫入到流中。
|--flush()
刷新流,將流中的數(shù)據(jù)刷新到目的地中,流還存在。
|--close()
關(guān)閉資源,在關(guān)閉錢會(huì)先調(diào)用flush(),刷新流中的數(shù)據(jù)到目的地。
FileWriter,除了自己的構(gòu)造函數(shù)外沒(méi)有特有的方法:
|--該類的特點(diǎn)
|--用于處理文本文件
|--沒(méi)有默認(rèn)的編碼表
|--有臨時(shí)緩沖
|--構(gòu)造函數(shù),在寫入流對(duì)象初始化時(shí),必需要有一個(gè)存儲(chǔ)數(shù)據(jù)的目的地。
|--FileWriter(StringfileName),該構(gòu)造器是干什么用的呢?
|--調(diào)用系統(tǒng)資源
|--在指定位置創(chuàng)立一個(gè)文件,假如該文件已經(jīng)存在則被掩蓋。
|--FileWriter(Stringfilename,Booleanappend),這構(gòu)造器的作用是當(dāng)傳入的boolean類型的值為true時(shí),會(huì)在指定文件末尾處進(jìn)展數(shù)據(jù)的續(xù)寫。
清單1,將文本數(shù)據(jù)保存到文件中代碼privatestaticvoidtest1(){FileWriterfw=null;
//初始化FileWriter對(duì)象,指定文件名已經(jīng)存儲(chǔ)路徑fw=newFileWriter(D:/test.txt);
fw.write(將字符串寫入流);
//將流中的數(shù)據(jù)刷新到目的地,流還在fw.flush();
fw.write(將字符串寫入流);}catch(IOExceptione){e.printStackTrace();}finally{if(fw!=null){try{fw.close();}catch(IOExceptione1){e1.printStackTrace();}}}
}
清單2,讀取一個(gè)已有文本文件,并將文本內(nèi)容打印出來(lái)代碼privatestaticvoidtest2(){FileReaderfr=null;try{
//初始化FileReader對(duì)象,指定文件路徑fr=newFileReader(D:/test.txt);intch=0;while((ch=fr.read())!=-1){
//每次讀取一個(gè)字符,直到讀到末尾-1為止System.out.println((char)ch);
}catch(IOExceptione){e.printStackTrace();}finally{if(fr!=null){try{fr.close();}catch(IOExceptione1){e1.printStackTrace();}}}
}
這樣每讀到一個(gè)字符就打印出來(lái),效率很不高,能不能按指定大小讀取完后再打印出來(lái)呢?答案是固然可以的。
清單3,讀取一個(gè)已有文本文件,讀完1kb再將其讀到的內(nèi)容打印出來(lái)代碼privatestaticvoidtest3(){FileReaderfr=null;try{
//初始化FileReader對(duì)象,指定文件路徑fr=newFileReader(D:/test.txt);char[]buf=newchar[1024];i
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州2025年貴州省衛(wèi)生健康委員會(huì)部分直屬事業(yè)單位招聘141人筆試歷年參考題庫(kù)附帶答案詳解
- 荊州2025年湖北荊州市市直事業(yè)單位人才引進(jìn)388人筆試歷年參考題庫(kù)附帶答案詳解
- 河南河南省實(shí)驗(yàn)幼兒園面向教育部直屬師范大學(xué)2025屆公費(fèi)師范畢業(yè)生招聘筆試歷年參考題庫(kù)附帶答案詳解
- 2025年中國(guó)固體亞氯酸鈉市場(chǎng)調(diào)查研究報(bào)告
- 2025至2031年中國(guó)陶瓷型自動(dòng)鞋套機(jī)行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年脫扣器自動(dòng)拍打清洗機(jī)項(xiàng)目可行性研究報(bào)告
- 2025至2031年中國(guó)組合音響揚(yáng)聲器行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年玻璃濾片包裝回收箱項(xiàng)目可行性研究報(bào)告
- 2025至2031年中國(guó)機(jī)車塑膠配件行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年手機(jī)沙發(fā)項(xiàng)目可行性研究報(bào)告
- 中國(guó)心理衛(wèi)生協(xié)會(huì)家庭教育指導(dǎo)師參考試題庫(kù)及答案
- 智能廣告投放技術(shù)方案
- 知識(shí)產(chǎn)權(quán)保護(hù)執(zhí)法
- 高質(zhì)量社區(qū)建設(shè)的路徑與探索
- 數(shù)字化時(shí)代的酒店員工培訓(xùn):技能升級(jí)
- 足球守門員撲救技巧:撲救結(jié)合守護(hù)球門安全
- 《學(xué)術(shù)規(guī)范和論文寫作》課件全套 第1-10章 知:認(rèn)識(shí)研究與論文寫作 - 引文規(guī)范
- 起重機(jī)更換卷筒施工方案
- 01智慧物流信息技術(shù)概述
- 精神發(fā)育遲滯的護(hù)理查房
- 茶多糖和茶多酚的降血糖作用研究
評(píng)論
0/150
提交評(píng)論