JAVA_IO_File類總結(jié)

JAVA File類總結(jié)

缺少案例

1 概述

File是“文件”和“目錄路徑名”的抽象表示形式。
File直接繼承Object,實現(xiàn)Serializable接口和Comparable接口。實現(xiàn)Serializable意味著File對象可以進(jìn)行序列化,實現(xiàn)Compareable意味著File對象可以比較。File能直接被存儲在有序的集合(如TreeSet、TreeMap中);

2 File參數(shù)列表

// 靜態(tài)成員
public static final String     pathSeparator        // 路徑分割符":"
public static final char       pathSeparatorChar    // 路徑分割符':'
public static final String     separator            // 分隔符"/"
public static final char       separatorChar        // 分隔符'/'

// 構(gòu)造函數(shù)
File(File dir, String name)
File(String path)
File(String dirPath, String name)
File(URI uri)

// 成員函數(shù)
boolean    canExecute()    // 測試應(yīng)用程序是否可以執(zhí)行此抽象路徑名表示的文件。
boolean    canRead()       // 測試應(yīng)用程序是否可以讀取此抽象路徑名表示的文件。
boolean    canWrite()      // 測試應(yīng)用程序是否可以修改此抽象路徑名表示的文件。
int    compareTo(File pathname)    // 按字母順序比較兩個抽象路徑名。
boolean    createNewFile()         // 當(dāng)且僅當(dāng)不存在具有此抽象路徑名指定名稱的文件時,不可分地創(chuàng)建一個新的空文件。
static File    createTempFile(String prefix, String suffix)    // 在默認(rèn)臨時文件目錄中創(chuàng)建一個空文件,使用給定前綴和后綴生成其名稱。
static File    createTempFile(String prefix, String suffix, File directory)    // 在指定目錄中創(chuàng)建一個新的空文件,使用給定的前綴和后綴字符串生成其名稱。
boolean    delete()             // 刪除此抽象路徑名表示的文件或目錄。
void    deleteOnExit()       // 在虛擬機(jī)終止時,請求刪除此抽象路徑名表示的文件或目錄。
boolean    equals(Object obj)   // 測試此抽象路徑名與給定對象是否相等。
boolean    exists()             // 測試此抽象路徑名表示的文件或目錄是否存在。
File    getAbsoluteFile()    // 返回此抽象路徑名的絕對路徑名形式。
String    getAbsolutePath()    // 返回此抽象路徑名的絕對路徑名字符串。
File    getCanonicalFile()   // 返回此抽象路徑名的規(guī)范形式。
String    getCanonicalPath()   // 返回此抽象路徑名的規(guī)范路徑名字符串。
long    getFreeSpace()       // 返回此抽象路徑名指定的分區(qū)中未分配的字節(jié)數(shù)。
String    getName()            // 返回由此抽象路徑名表示的文件或目錄的名稱。
String    getParent()          // 返回此抽象路徑名父目錄的路徑名字符串;如果此路徑名沒有指定父目錄,則返回 null。
File    getParentFile()      // 返回此抽象路徑名父目錄的抽象路徑名;如果此路徑名沒有指定父目錄,則返回 null。
String    getPath()            // 將此抽象路徑名轉(zhuǎn)換為一個路徑名字符串。
long    getTotalSpace()      // 返回此抽象路徑名指定的分區(qū)大小。
long    getUsableSpace()     // 返回此抽象路徑名指定的分區(qū)上可用于此虛擬機(jī)的字節(jié)數(shù)。
int    hashCode()               // 計算此抽象路徑名的哈希碼。
boolean    isAbsolute()         // 測試此抽象路徑名是否為絕對路徑名。
boolean    isDirectory()        // 測試此抽象路徑名表示的文件是否是一個目錄。
boolean    isFile()             // 測試此抽象路徑名表示的文件是否是一個標(biāo)準(zhǔn)文件。
boolean    isHidden()           // 測試此抽象路徑名指定的文件是否是一個隱藏文件。
long    lastModified()       // 返回此抽象路徑名表示的文件最后一次被修改的時間。
long    length()             // 返回由此抽象路徑名表示的文件的長度。
String[]    list()           // 返回一個字符串?dāng)?shù)組,這些字符串指定此抽象路徑名表示的目錄中的文件和目錄。
String[]    list(FilenameFilter filter)    // 返回一個字符串?dāng)?shù)組,這些字符串指定此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。
File[]    listFiles()                        // 返回一個抽象路徑名數(shù)組,這些路徑名表示此抽象路徑名表示的目錄中的文件。
File[]    listFiles(FileFilter filter)       // 返回抽象路徑名數(shù)組,這些路徑名表示此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。
File[]    listFiles(FilenameFilter filter)   // 返回抽象路徑名數(shù)組,這些路徑名表示此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。
static File[]    listRoots()    // 列出可用的文件系統(tǒng)根。
boolean    mkdir()     // 創(chuàng)建此抽象路徑名指定的目錄。
boolean    mkdirs()    // 創(chuàng)建此抽象路徑名指定的目錄,包括所有必需但不存在的父目錄。
boolean    renameTo(File dest)    // 重新命名此抽象路徑名表示的文件。
boolean    setExecutable(boolean executable)    // 設(shè)置此抽象路徑名所有者執(zhí)行權(quán)限的一個便捷方法。
boolean    setExecutable(boolean executable, boolean ownerOnly)    // 設(shè)置此抽象路徑名的所有者或所有用戶的執(zhí)行權(quán)限。
boolean    setLastModified(long time)       // 設(shè)置此抽象路徑名指定的文件或目錄的最后一次修改時間。
boolean    setReadable(boolean readable)    // 設(shè)置此抽象路徑名所有者讀權(quán)限的一個便捷方法。
boolean    setReadable(boolean readable, boolean ownerOnly)    // 設(shè)置此抽象路徑名的所有者或所有用戶的讀權(quán)限。
boolean    setReadOnly()                    // 標(biāo)記此抽象路徑名指定的文件或目錄,從而只能對其進(jìn)行讀操作。
boolean    setWritable(boolean writable)    // 設(shè)置此抽象路徑名所有者寫權(quán)限的一個便捷方法。
boolean    setWritable(boolean writable, boolean ownerOnly)    // 設(shè)置此抽象路徑名的所有者或所有用戶的寫權(quán)限。
String    toString()    // 返回此抽象路徑名的路徑名字符串。
URI    toURI()    // 構(gòu)造一個表示此抽象路徑名的 file: URI。
URL    toURL()    // 已過時。 此方法不會自動轉(zhuǎn)義 URL 中的非法字符。建議新的代碼使用以下方式將抽象路徑名轉(zhuǎn)換為 URL:首先通過 toURI 方法將其轉(zhuǎn)換為 URI,然后通過 URI.toURL 方法將 URI 裝換為 URL。

3 新建目錄

3.1 根據(jù)相對路徑新建目錄

//在當(dāng)前目錄下新建dir文件夾
File dir = new File("dir");
dir.mkdir();

3.2 根據(jù)絕對路徑新建目錄

//遞歸創(chuàng)建目錄
File dir = new File("d:/1/2/dir");
dir.mkdirs();

3.3 使用URI創(chuàng)建目錄

URI uri = new URI("file:/d:/1/2/dir");
File dir = new File(uir);
dir.mkdirs();

4 新建子目錄的常用方法

4.1 方法一

//要求dir目錄必須存在
File sub = new File("dir","sub");
sub.mkdir();

4.2 方法二

//下面的dir是File對象
File sub = new File(dir, "sub");
sub.mkdir();

4.3 方法三

//遞歸創(chuàng)建子目錄,如果dir不存在那么創(chuàng)建dir目錄
File sub = new File("dir/sub");
sub.mkdirs();

4.4 方法四

File sub = new File(new URI("file:/d:/1/2/dir/sub"));
sub.mkdirs();

5 新建文件

5.1 方法一

try{
    File dir = new File("dir");
    File file = new File(dir, "file.txt");
    file.createNewFile();
}catch(IOException e){
    e.printStackTrace();
}

5.2 方法二

try{
    File file = new File("d:/1/2/dir/file.txt");
    file.createNewFile();
}catch(IOException e){
    e.printStackTrace();
}

參考博文

http://www.cnblogs.com/skywang12345/p/io_08.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,741評論 18 399
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,649評論 19 139
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 4,017評論 0 11
  • 最近在讀成甲寫的好好學(xué)習(xí),里面提到了一個新概念,叫綠燈思維。 所謂綠燈思維,就是在別人跟你提出不同的意見的時候,第...
    柏白白Gary閱讀 373評論 0 1
  • 人生三苦:求不得、放不下、愛別離,人生也有三悲:不知所求、不知所放、不知所愛,三苦只是其次,三悲才是最難以忍受的。...
    蕭能志閱讀 380評論 0 1

友情鏈接更多精彩內(nèi)容