File类使用详解
轉(zhuǎn)自http://blog.csdn.net/nightcurtis/article/details/51385934
瘋狂java講義讀書筆記之File類的使用詳解
??File類是java io包下代表與平臺無關(guān)的文件和目錄,也就是說,如果希望在程序中操作文件和目錄,都可以通過File類來完成。File不能訪問文件內(nèi)容本身。如果需要訪問文件內(nèi)容本身,則需要使用輸入/輸出流。
File類的一下常用方法和說明
1.訪問文件名相關(guān)方法:
-
String getName(); 返回此File對象所表示的文件名和路徑名(如果是路徑,則返回最后一級子路徑名)。
-
String getPath(); 返回此File對象所對應(yīng)的路徑名。
-
File getAbsolutePath(); 返回此File對象所對應(yīng)的絕對路徑名。
- String getParent(); 返回此File對象所對應(yīng)目錄(最后一級子目錄)的父路徑名。
- boolean renameTo(File newName); 重命名此File對象所對應(yīng)的文件或目錄,如果重命名成功,則返回true:否則返回false.
2.文件檢測相關(guān)方法
- boolean exists(); 判斷File對象所對應(yīng)的文件或目錄是否存在。
- boolean canWrite(); 判斷File對象所對應(yīng)的目錄或文件是否可寫。
- boolean canRead(); 判斷File對象所對應(yīng)的目錄或文件是否可讀。
- boolean isFile(); 判斷File對象所對應(yīng)的是否是文件,而不是目錄。
- boolean isDirectory(); 判斷File對象所對應(yīng)的是否是目錄,而不是文件。
- boolean isAbsolute(); 判斷File對象所對應(yīng)的文件或目錄是否是絕對路徑。該方法消除了不同平臺的差異,可以直接判斷File對象是否為絕對路徑。在UNIX/Linux/BSD等系統(tǒng)上,如果路徑名開頭是一條斜線(/),則表明該File對象對應(yīng)一個絕對路徑;在Windows等系統(tǒng)上,如果路徑開頭是盤符,則說明它是絕對路徑。
3.獲取常規(guī)文件信息
- long lastModified(); 返回文件最后修改時間。
- long length(); 返回文件內(nèi)容的長度。
4.文件操作相關(guān)的方法
- boolean createNewFile(); 當(dāng)此File對象所對應(yīng)的文件不存在時,該方法將新建的一個該File對象所指定的新文件,如果創(chuàng)建成功則返回true;否則返回false.
- boolean delete(); 刪除File對象所對應(yīng)的文件或路徑。
- static File CreateTempFile(String prefix,String suffix);在默認的臨時文件目錄創(chuàng)建一個臨時空文件,使用給定前綴、系統(tǒng)生成的隨機數(shù)和給定后綴作為文件名。這是一個靜態(tài)方法,可以直接通過File來調(diào)用。preFix參數(shù)必須至少是3個字節(jié)長。建議前綴使用一個短的、有意義的字符串。建議前綴使用一個短的、有意義的字符串,比如”hjb“ 或”main”. suffix參數(shù)可以為null,在這種情況下,將使用默認的后綴”.tmp”.
- static File CreateTempFile(String prefix,String suffix,File directory);在directory所指定的目錄中創(chuàng)建一個臨時空文件,使用給定前綴、系統(tǒng)生成的隨機數(shù)和給定后綴作為文件名。這是一個靜態(tài)方法,可以直接通過File來調(diào)用。
- void deleteOnExit(); 注冊一個刪除鉤子,指定當(dāng)Java虛擬機退出時,刪除File對象隨對應(yīng)的文件和目錄。
5.目錄操作相關(guān)方法
- boolean mkdir(); 試圖創(chuàng)建一個File對象所對應(yīng)的目錄,如果創(chuàng)建成功,則返回true;否則返回false. 調(diào)用該方法時File對象必須對應(yīng)一個路徑,而不是一個文件。
- String[] list(); 列出File對象的所有子文件名和路徑名,返回String數(shù)組。
- File[] listFiles(); 列出File對象的所有子文件和路徑,返回File數(shù)組。
- static File[] listRoots(); 列出系統(tǒng)所有的根路徑。這是一個靜態(tài)方法,可以直接通過File類來調(diào)用。
文件過濾器
?? 在File類的list()方法中可以接收一個FilenameFilter參數(shù),通過該參數(shù)可以只列出符號條件的文件。?
代碼示例:
??實現(xiàn)accept()方法就是指定自己的規(guī)則,指定哪些文件應(yīng)該有l(wèi)ist()方法列出。?
運行上面的程序,將看到當(dāng)前路徑下所有的*.java文件以及文件夾被列出。
總結(jié)
- 上一篇: 卫星通信频段:C频段、Ku频段和Ka频段
- 下一篇: Object类详解