file和randomaccessfile歸納總結
一、file類
1)file類用途:用於描述檔案系統中的乙個檔案或目錄。
2)具體用法:
1>建立file類
file file = new file("."+file.separator+"test.txt");
注意:在路徑中使用目錄的層級分隔符在不同系統中有區別
* windows預設為"\" : d:\***\***\test.txt
* linux "/" : d:/***/test.txt
* 所以當需要使用目錄層級分隔符時應當使用file提供的常量
file.separator
2> file類的屬性和方法
a.檢視該檔案大小
long length = file.length();
b.獲取當前file所描述的檔案或目錄的名字
file.getname();
c.獲取當前檔案或目錄的最後修改日期
file.lastmodified();
d.判斷當前file物件所描述的檔案或目錄是否存在
file.exists();
e.檢視當前檔案或目錄是否可讀
file.canread();
f.檢視當前檔案是否可寫
file.canwrite();
g.檢視當前file物件描述的是否是乙個檔案
file.isfile();
h.檢視當前file物件描述的是否是乙個目錄
file.isdirectory();
i.獲取該file物件所描述檔案或目錄的路徑
file.getpath();
j.獲取絕對路徑
file.getabsolutepath();
k.獲取作業系統標準的絕對路徑(該方法需要強制捕獲異常)
file.getcanonicalpath();
l.建立乙個目錄
dir.mkdir();
m.建立乙個新檔案
file.createnewfile();
n.獲取當前file物件的父目錄
file.getparentfile();
o.當刪除了該檔案或目錄
file.delete();
注意:若要刪除乙個目錄,必須保證該目錄是空目錄(不包含任何子項)才可以刪除
二、randomaccessfile類
1)用途:使用randomaccessfile向檔案中讀寫資料。
2)具體用法:
1>建立randomaccessfile類
randomaccessfile raf = randomaccessfile(file file,string mode);
其中: file 用於來進行讀寫操作的檔案
mode 對應:
* "r" : 對該檔案的操作是唯讀的
* "rw": 隊該檔案的操作是可讀寫的
2> randomaccessfile中常用方法:
a.向檔案中寫入乙個位元組
raf.write();
b.寫乙個long值
raf.writelong();
c.寫乙個字串按照utf-8編碼將字串轉換為位元組後寫出
raf.writeutf();
注意:writeutf方法寫出的位元組量比實際多2個位元組這兩個位元組用於記錄其寫出的字串占用的 總位元組量以便讀取
d.將字串按照當前系統預設的字符集轉換為對應的位元組後寫出
byte data = str.getbytes("utf-8");
raf.write(data);
e.讀取乙個位元組
raf.read()
f.連續讀取4個位元組,將對應的int值返回
readint();
g.連續讀取8個位元組,將對應的long值返回
raf.readlong();
h.使用utf-8編碼的形式讀取字串
raf.readutf();
i.獲取當前游標的位置
raf.getfilepointer();
j.滑動游標到指定的位置
void seek(long pos);
注意:0代表第乙個位元組的位置
File類和遞迴
檔案 資料夾 目錄路徑的抽象形式。方法自己呼叫自己,分為直接遞迴和間接遞迴 前提 呼叫方法的時候,方法的主體不變,方法的引數發生變化,可以使用遞迴 注意 有條件使得遞迴結束,否則會發生棧記憶體溢位 即使有遞迴條件,也要保證遞迴次數不能太多 方法都在棧中執行 構造方法不能使用遞迴 filefilter...
File和Dir類介紹(一)
test file example text file name test.txt 建立檔案,並寫入10行資料 方法一 file file.new text file name,w 1.10 each do i file.puts 第 行資料 end 方法二 file.open text file ...
預編譯之 LINE 和 FILE
在提示出錯資訊和進行錯誤處理方面,除了assert斷言外,c標準還定義了2個巨集 line 和 file 它們在許多執行出錯的場合下都很有用處。例如,可以把它們和assert聯用來更精確地定位導致assert失敗的出錯點。實際上,大多數assert實現都使用了 line 和 file 來完成它們的工...