


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第2章Java輸入輸出創(chuàng)建線程的兩種方法是什么?-繼承Thread類-實(shí)現(xiàn)Runnable接口線程同步分為哪兩類?-同步代碼塊-同步方法線程生命周期的五種狀態(tài)?-創(chuàng)建、就緒、運(yùn)行、阻塞、終止課程回顧掌握使用File類進(jìn)行文件操作理解輸入輸出流的概念掌握使用字節(jié)流讀寫文件掌握使用字符流讀寫文件本章目標(biāo)1 文件操作什么是文件文件是相關(guān)記錄或存放于相同位置的數(shù)據(jù)的集合Java中提供java.io.File類操作文件及目錄 File類主要常量及方法方法或常量類型描述public )構(gòu)造方法創(chuàng)建File類對象并傳入完整路徑public boolean createNewFile()方法創(chuàng)建新文件publ
2、ic boolean delete()方法刪除文件public boolean exists()方法判斷文件是否存在public boolean isDirectory()方法判斷給定的路徑是否為目錄public long length()方法返回文件的大小public String list()方法列出指定目錄的全部內(nèi)容,只列出 名稱public File listFiles()方法列出指定目錄的全部File對象public boolean mkdir()方法創(chuàng)建目錄oublic boolean renameToO為巨有的立件董命名判斷文件是否存在,不存在則創(chuàng)建,存在則刪除f=new Fil
3、e化:/1.txt”);if(f.exists()判斷文件是否存在f.delete();/ 刪除文件 elsetryf.createNewFile();/ 創(chuàng)建新文件 catch (Exception e) e.printStackTrace();System.out.println(”文神右稱:”+f.getName();System.out.printlnj” 文件路徑:n+f.getPath(); System.out.println(f.canWrite()?H 文件可寫”:”文件不可寫”);System.out. println(f.isDirectory()?" 目錄”:
4、”不是目錄”);System.out.println(”文件長度:,+f.length()+',Bytes,');列出指定目錄下的文件File f = new Filef'c:");String str = f.list(); for(int i=O;i<str.length;i+)System.out.println(stri);丿列出C盤下|全部內(nèi)容列出指定目錄下的所有文件 public static void ListFiles(String path);if(!dir.exists()|!dir.isDirectory() retum;/Z7果是
5、文浮或不存在刎直接返回File ZesQ;/獲得目錄下所有File對象名稱的數(shù)組for(int i=0;i<)if(filesi.isFile()System.out.println(path+""+列出文件名和文件長度filesi.getName()+"t"+filesi.length();elseSystem.out.println(path+""+filesi.getName()+"t<dir>");給出目錄名ListFiles(filesi.getPath();滋7果是目靈重勒調(diào)用朮方法(
6、遞歸)理解流的概念2流3字節(jié)流字節(jié)流readsProgramj流使用步驟使用File類打開文件使用字節(jié)或字符流 指定位置進(jìn)行讀寫操作關(guān)閉流字節(jié)流 Inputstream:程序可以從中連續(xù)讀取字節(jié)的對象稱為字節(jié)輸入流 Inputstream的主要方法Inputstream 和Outputstream Outputstream:程序可以向其中連續(xù)寫入字節(jié)的對象稱為字節(jié)輸出流 Outputstream的主要方法 InputStrea m和 0 utputStrea m 是兩個抽象類使用子類和分別讀取和寫入文件的內(nèi)容3.2和/1 使用File類找到一個文件,如果當(dāng)前文件不存在則創(chuàng)建新文件File f
7、= new File("d:"+"demo.txt"); 2.實(shí)例化IO流類Outputstream os = new (f,true);String str=Mhello world"/3O進(jìn)行寫操作os.write(str.getBytes();4.關(guān)閉輸出流true:在文件末尾 追加內(nèi)容os.close();in = new (f);byte buf = new byte1024;int len = in.read(buf);System.out.println(new String(buf,O,len); in.close(); Buf
8、feredlnputStream 和 BufferedOutputStrea m 可以增加內(nèi)存緩沖區(qū) BufferedlnputStream 構(gòu)造方法BufferedlnputStream(lnputStream in)BufferedlnputStream(lnputStream in,int size)第一種形式的構(gòu)造方法創(chuàng)建帶有32個字節(jié)緩沖區(qū)的緩沖流,第二種形式的構(gòu) 造方法按指定的大小來創(chuàng)建緩沖區(qū) BufferedOutputStream 構(gòu)造方法BufferedOutputStream(OutputStream in)BufferedOutputStream(OutputStream
9、 in,int size)第一種形式的構(gòu)造方法創(chuàng)建帶有32個字節(jié)緩沖區(qū)的緩沖流,第二種形式的構(gòu) 造方法按指定的大小來創(chuàng)建緩沖區(qū)醫(yī)例拷貝a文件到b文件data = new byte1024;in = new ("d:/test.txt");os = new ("d:/demo.txtH);Buffered InputStream bufin = new BufferedlnputStream(in); BufferedOutoutStream bufos = new BufferedOutputStream(os); int count=0;while(count=
10、bufin.read(data)!=-1)bufos .write(data, 0, cou nt);bugs QushO;/強(qiáng)制輸出緩沖區(qū)中 bufin.close();bufos.close();拷貝的文件多出上一 次的部分內(nèi)容。 7每次只寫入實(shí)際 飛取的數(shù)據(jù),4字符流4.1 Reader 和 Writer Reader和Writer是兩個抽象類,分別與InputStream和OutputStream對應(yīng) Reader的主要方法方法描述public abstract void close()關(guān)閉輸入流public int read()讀取單個字符public int read(cha叩c)
11、將內(nèi)容讀取到字符數(shù)組中,并返回讀I I. Write主要方法方法描述public abstract void close()關(guān)閉輸出流public void write(String str)輸出字符串public void write(char c)輸出字符數(shù)組public abstract void flush()強(qiáng)制清空緩存4.2巻i-e f u new Fi-e(a/demo.doc£ Writer ou»Kn =ew (f)八OULWriED(zfe=o wor-d)OULC-oseo-Reader reader u new (f)_charc= n new ch
12、a二1024" ini-en n 號翊瀚蜩時 =胡彗曲召 system.ouLprinHnmew Stz3.ng(co-en)r OULC-oseo-readeroose(X InputStreamReader和O utputStreamWriter是字節(jié)流和字符流之間的轉(zhuǎn)換類 InputStreamReader是將輸入的字節(jié)流變?yōu)樽址麡?gòu)造方法InputStreamReader(lnputStream in)lnputStreamReader(lnputStream in,String charsetName)Outputstream Writer是將輸出的字符流變?yōu)樽止?jié)流 構(gòu)造方法
13、InputStreamReader(lnputStream in)lnputStreamReader(lnputStream in,String charsetName)丿字符流轉(zhuǎn)換字節(jié)流File f = new File("d:/demo.txt");OutputStreamWriter os = new OutputStreamWriter(new (f); os.write("hello world");os. close();字節(jié)流轉(zhuǎn)換字符流File f = new File("d:/demo.txt"); 字節(jié)流變?yōu)樽址鱅
14、nputStreamReader reader= new lnputStreamReader(new (f); char c = new char1024;int len 二 reader.read(c);System.out.println(new String(c,O,len);reader.close();避免頻繁進(jìn)行字符與字節(jié)間的相互轉(zhuǎn)換,盡量分別使用BufferedWriter和 BufferedReader 類包裝 0 utputStreamWriter 和 InputStreamReader 類 BufferedReader 和 Buffered Writer 是帶緩沖區(qū)的 Re
15、ader 和 Writer BufferedReader 主要方法 BufferedWriter 主要方法f File f = new File("d:/demo.txtH); writer = new (f);BufferedWriter bufWriter = new BufferedWriter(writerk bufWriter.write("hello world”)二二寫入一行字符bufWriter.close(); writer.close();reader = new (f);Buffered Reader bufReader = new BufferedReader( reader);讀取一行字符System.out.println(bufReader.readLine();4.5 Printwriter Printwriter是Write啲子類,其作用是將格式化對象打印到一個文本輸出流 Printwriter主要方法:print。、println()、write()pw.write("java");pw.close();Printwriter pw = new PrintWriter(&quo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 第一章一方水土養(yǎng)一方人教學(xué)設(shè)計2023-2024學(xué)年高二地理人教版(2019)選擇性必修3
- 中國打印墨水行業(yè)市場運(yùn)營現(xiàn)狀及投資規(guī)劃研究建議報告
- 第14課 制作數(shù)字小報教學(xué)設(shè)計
- 第25章 第3節(jié) 《遠(yuǎn)離煙酒 拒絕毒品》教學(xué)設(shè)計-2024-2025學(xué)年初中生物八年級下冊同步教學(xué)(蘇科版)
- 2025年酒店總經(jīng)理任期目標(biāo)與績效管理合同
- Unit 3 Fascinating Parks Explore theme parks and write about a park 教學(xué)設(shè)計-2024-2025學(xué)年高中英語人教版(2019)選擇性必修第一冊
- 第1章第3節(jié) 怎樣學(xué)習(xí)化學(xué)教學(xué)設(shè)計-2024-2025學(xué)年九年級化學(xué)滬教版(全國)(2024)上冊
- 家政人員派遣合同模板
- 汽車賽事運(yùn)輸合同樣本
- 二零二五年度醫(yī)院與醫(yī)療志愿者簽訂的志愿服務(wù)勞動合同書
- 航拍中國優(yōu)秀課件
- 《做自己的心理醫(yī)生 現(xiàn)代人的心理困惑和自我療愈策略》讀書筆記思維導(dǎo)圖PPT模板下載
- 2022-2023學(xué)年上海市楊浦區(qū)上海同濟(jì)大附屬存志學(xué)校七年級數(shù)學(xué)第二學(xué)期期中綜合測試模擬試題含解析
- 小學(xué)音樂組集體備課計劃
- XX學(xué)校服采購工作方案(含一封信、備案表、反饋表)
- 血液透析安全注射臨床實(shí)踐專家共識解讀
- GB/T 41873-2022塑料聚醚醚酮(PEEK)樹脂
- SB/T 10940-2012商用制冰機(jī)
- GB/T 33107-2016工業(yè)用碳酸二甲酯
- GB/T 25945-2010鋁土礦取樣程序
- GB/T 18938-2008家用和類似用途的面包片電烘烤器性能測試方法
評論
0/150
提交評論