java.io.File用于表示文件(目錄),也就是說(shuō)程序員可以通過(guò)File類(lèi)在程序中操作硬盤(pán)上的文件和目錄所宰。
java.io.File:File的每一個(gè)實(shí)例用于表示文件系統(tǒng)中的一個(gè)文件或目錄
使用File可以:
1)訪問(wèn)該文件或目錄的屬性信息(名字,大小善绎,修改日期等)
2)操作文件或目錄(創(chuàng)建迅栅,刪除)
3)若表示的是目錄,可以查看該目錄中的子項(xiàng)信息
但是不能訪問(wèn)一個(gè)文件中的數(shù)據(jù)
表示文件的相關(guān)方法:
創(chuàng)建新文件:
刪除一個(gè)文件:
File表示目錄時(shí):
創(chuàng)建目錄方法:
刪除目錄:
這里有遞歸調(diào)用,就是方法內(nèi)部調(diào)用自己方法的現(xiàn)象稱為遞歸調(diào)用冕杠,遞歸現(xiàn)象就是允許程序執(zhí)行到某個(gè)階段時(shí)整體重新來(lái)過(guò)微姊。
使用遞歸需要注意:
1)方法內(nèi)部調(diào)用自己方法不能100%成立,否則是死循環(huán)分预。
2)遞歸層次盡量少兢交,因?yàn)檫f歸消耗內(nèi)存可觀,運(yùn)行效率差笼痹。
獲取一個(gè)目錄中的所有子項(xiàng)方法:
文件過(guò)濾器過(guò)濾子項(xiàng):File提供了一個(gè)重載的listFiles方法配喳,該方法可以指定一個(gè)文件過(guò)濾器,這樣可以將該目錄中所有滿足過(guò)濾器要求的子項(xiàng)獲取到凳干。
下面介紹一個(gè)可以讀寫(xiě)文件數(shù)據(jù)的類(lèi)晴裹,Java提供了一個(gè)可以對(duì)文件隨機(jī)訪問(wèn)的操作,訪問(wèn)包括讀和寫(xiě)操作救赐。該類(lèi)名為RandomAccessFile涧团。該類(lèi)的讀寫(xiě)是基于指針的操作。
創(chuàng)建文件:
讀取文件數(shù)據(jù):
文件復(fù)制(單字節(jié)復(fù)制):
文件復(fù)制(多字節(jié)一起復(fù)制):隨機(jī)讀寫(xiě)效率差泌绣,塊讀寫(xiě)效率高。所以若希望提高讀寫(xiě)效率预厌,可以通過(guò)提高每次讀寫(xiě)的數(shù)據(jù)量減少讀寫(xiě)次數(shù)來(lái)達(dá)到阿迈。
文件指針操作:
1)使用RAF讀寫(xiě)基本類(lèi)型數(shù)據(jù)轧叽,以及RAF對(duì)指針的操作:
int skipBytes(int n):方法可以嘗試跳過(guò)輸入的 n 個(gè)字節(jié)以丟棄跳過(guò)的字節(jié),返回跳過(guò)的實(shí)際字節(jié)數(shù)腰埂。如果 n 為負(fù)數(shù)飒焦,則不跳過(guò)任何字節(jié)。
2)寫(xiě)字符串:
讀字符串: