file是java.io包下代表與平台無關的檔案和目錄,則程式中操作檔案和目錄,都可以通過file類來完成。
file能建立、删除、重命名檔案和目錄。file不能通路檔案内容本身,如果通路檔案内容本身,則需要使
用輸入/輸出流。
file類可以使用檔案路徑字元串來建立file執行個體,該檔案路徑字元串既可以是絕對路徑,也可以是相對路
徑。在預設情況下,系統總是依據使用者的工作路徑來解釋相對路徑。
建立file對象後,可以調用file對象的方法來通路。
常用的方法如下:
1、通路檔案名相關的方法
(1) string getname():傳回此檔案對象所表示的檔案名或路徑名。
(2) string getpath():傳回此file對象所對應的路徑名。
(3) file getabsolutefile():傳回此file對象所對應的絕對路徑指向的file對象。
(4) string getabsolutepath():傳回此file對象所對應的絕對路徑。
(5) string getparent():傳回此file對象所對應的目錄的父目錄,以工作路徑為準,如果已經在工作
路徑的根目錄下,則傳回null,否則傳回父目錄。
(6) boolean renameto(file newname):重命名此file對象所對應的檔案或目錄,成功傳回true,否
則傳回false。
2、檔案檢測相關的方法
(1) boolean exists():判斷file對象所對應的檔案或目錄是否存在。
(2) boolean canwrite():判斷file對象所對應的檔案和目錄是否可寫。
(3) boolean canread():判斷file對象所對應的檔案和目錄是否可讀。
(4) boolean isfile():判斷file對象所對應的是否是檔案。
(5) boolean isdirectory():判斷file對象所對應的是否是目錄。
(6) boolean isabsolute():判斷file對象所對應的檔案或目錄是否絕對路徑。例如:如果在
unix/linux等系統上,如果路徑名的開頭是/,則表明file對象對應一個絕對路徑,在windows等系統
上,如果路徑開頭是盤符,則說明它是一個絕對路徑。
1、 擷取正常檔案資訊
(1) long lastmodified():傳回檔案的最後修改時間。
(2) long length():傳回檔案内容的長度。
2、 檔案操作相關的方法
(1) boolean createnewfile():當此file對象對應的檔案不存在時,建立一個該file對象所對應的文
件,建立成功傳回true,否則傳回false。
(2) boolean delete():删除file對象所在的檔案或路徑。注意:當使用這個方法時,如果是删除的一
個檔案夾,檔案夾中有内容時檔案夾不會被删除,如果是個空檔案夾則可以删除成功。
3、 目錄操作相關的方法
(1) boolean mkdir():建立一個file對象所對應的目錄,建立的是目錄而不是檔案。注意:這個方
法,如果父級目錄不存在時,則子目錄無法建立。
(2) boolean mkdirs():建立一個file對象所對應的所有目錄,如果上級目錄不存在,會同時将上級目
錄建立出來。
(3) file[] listfile():列出file對象的所有子檔案和路徑,傳回file數組。
(4) static file[] listroots():列出系統所有根路徑。
遞歸
方法定義中調用方法本身的現象
要有出口,否則就是死遞歸
次數不能太多,否則就記憶體溢出
構造方法不能遞歸使用