IO學習筆記(三)
13. File 類
它既能代表一個文件的名稱,又能代表一個目錄下一組文件的名稱。常用於對文件或文件夾的操作。
File對象也可以作為參數傳遞給流的構造函數。
File(File parent,String child)
根據 parent 抽象路徑名和 child 路徑名字符串創建一個新File
實例
File(String pathname)
通過將給定路徑名字符串轉換為抽象路徑名來創建一個新File
實例。
File(String parent,String child)
根據 parent 路徑名字符串和 child 路徑名字符串創建一個新File
實例。
File file = new File("c:\\abc\\a.txt");-------File file = new File("c:"+ File.separator +"abc"+ File.separator +"a.txt"); //比較通用
File file = new File("c:\\abc","a.txt");
File f = new File("D:\\abc");
File file = new File(f,"a.txt");--------------這一構造的執行,並沒有真正的創建了一個文件或文件夾。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
createNewFile()
當且僅當不存在具有此抽象路徑名指定名稱的文件時,不可分地創建一個新的空文件
File file = new File("c:\\abc\\a.txt");
System.out.print(file.createNewFile());------------如果c:\\abc\\a.txt路徑下的文件不存在,那麼會返回true,如果已經存在或者創建失敗,那麼會返回false
boolean delete()
刪除此抽象路徑名表示的文件或目錄
void deleteOnExit()
在虛擬機終止時,請求刪除此抽象路徑名表示的文件或目錄-----在操作結束退出時刪除
當我們創建一個文件,並且對這個文件進行操作,如果這一過程中出現異常,那麼程序將終止,我們的delete()方法將不會被執行。
但是我們一定要刪除這個文件,這時候就要使用deleteOnExit()方法,表示在程序對文件操作結束後,執行次命令,將文件刪除。
File file = new File("c:\\abc\\a.txt");
file.deleteOnExit();
code(對文件內容進行操作);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
boolean isDirectory()
測試此抽象路徑名表示的文件是否是一個目錄。
boolean
isFile()
測試此抽象路徑名表示的文件是否是一個標準文件。
boolean
isHidden()
測試此抽象路徑名指定的文件是否是一個隱藏文件
File file = new File("c:\\abc\\a.txt");
System.out.print(file.isDirectory()); -------false
System.out.print(file.isFile()); -------false
分析:因為File file = new File("c:\\abc\\a.txt");這條語句是不創建文件或目錄的,所以兩種判斷都為false,那麼我們在執行這兩種判斷時,
有必要先進行判斷對應的文件是否存在,如果不存在的話則沒必要進行後續判斷。
boolean exists()
測試此抽象路徑名表示的文件或目錄是否存在
boolean mkdir()
創建此抽象路徑名指定的目錄-----------------隻能在現有目錄的基礎上創建一個級別的目錄
boolean mkdirs()
創建此抽象路徑名指定的目錄,包括所有必需但不存在的父目錄------------可以創建多級目錄
boolean
isAbsolute()
測試此抽象路徑名是否為絕對路徑名------無論文件是否存在,隻要是絕對路徑該方法就會返回true。否則返回false
……………………………………………………………………………………………………………………………………………………………
String
getPath()
將此抽象路徑名轉換為一個路徑名字符串
String
getAbsolutePath()
返回此抽象路徑名的絕對路徑名字符串
File file = new File(當這裏是一個絕對路徑的時候,上述兩方法返回值相同);
File
getAbsoluteFile()
返回此抽象路徑名的絕對路徑名形式。
String
getParent()
返回此抽象路徑名父目錄的路徑名字符串;如果此路徑名沒有指定父目錄,則返回null
File file = new File("D:\\IO\\abc.txt");
System.out.println("---:"+ file.getAbsoluteFile()); ---:D:\IO\abc.txt
System.out.println("---:"+file.getParent()); ---:D:\IO
File file2 = new File("ac.txt");
System.out.println("^^^:"+ file2.getAbsoluteFile()); ^^^:D:\IO\ac.txt
System.out.println("^^^:"+file2.getParent()); ^^^:null
System.out.println("---:"+file.getPath()); ---:D:\IO\abc.txt
System.out.println("---:"+file2.getPath()); ---:ac.txt
*************************************************************************************************************************
最後更新:2017-04-02 15:15:24
上一篇:
失控的騰訊開始自救
下一篇:
中國市場唿喚高手的戰爭
純CSS實現斜角
談談分布式事務之二:基於DTC的分布式事務管理模型[下篇]
BitmapFactory.Options.inSampleSize 的用法
isxdigit <ctype.h> <cctype>
安卓遊戲紅利開發更多屬於巨頭
SQL UNION 和 UNION ALL 操作符
《數據分析實戰:基於EXCEL和SPSS係列工具的實踐》一1.4 數據分析的流程
java中使用switch case報錯case expressions must be constant expressions
CRA簡報:計算研究與數據科學的新興領域
《Linux From Scratch》第一部分:介紹 第一章:介紹- 1.5. 幫助