您現在的位置是:首頁 > 舞蹈首頁舞蹈

java io流File類詳解

由 程式設計師COW哥 發表于 舞蹈2023-01-11
簡介判斷類方法1、boolean exists():判斷給定檔案是否存在,存在返回true,否則返回false2、boolean isFile():判斷是否檔案3、boolean isAbsolute():判斷是否絕對路徑4、boolean i

獨腳靈治癌症怎樣吃

概術

java。io。File類是檔案和目錄路徑名的抽象表示形式,主要用於檔案和目錄的建立,查詢,刪除,判斷等操作。

java io流File類詳解

總體概述

構造方法

public File(File parent, String child):根據 parent 抽象路徑名和 child 路徑名字串建立一個新 File 例項。

public File(String pathname):透過將給定路徑名字字串轉換為抽象路徑名來建立一個新File例項。

public File(String parent, String child):根據parent路徑字串和child路徑名字串建立一個新File例項。

判斷類方法

1、boolean exists():判斷給定檔案是否存在,存在返回true,否則返回false

2、boolean isFile():判斷是否檔案

3、boolean isAbsolute():判斷是否絕對路徑

4、boolean isDirectory():判斷是否目錄

5、boolean isHidden():判斷是否隱藏檔案

6、boolean canExecute():判斷檔案是否可執行

7、boolean canRead():判斷檔案是否可讀

8、boolean canWrite():判斷檔案是否可寫

建立刪除類方法

1、boolean delete():刪除檔案,並返回刪除結果

2、void deleteOnExit():檔案存在時才刪除

3、boolean createNewFile():建立新檔案

4、boolean mkdir():建立件夾,如果父資料夾不存在則不建立

5、boolean mkdirs():一次性建立多級資料夾

獲取屬性類方法

1、String getName():獲取檔名,不包含路徑

2、String getPath():獲取檔案的相對路徑

3、String getAbsolutePath():獲取檔案的絕對路徑

4、String getParent():獲取檔案的上級目錄,返回一個String物件

5、File getParentFile():獲取檔案的上級目錄,返回一個File物件

6、String getAbsoluteFile():獲取檔案的絕對路徑,類似getAbsolutePath()

7、File getCanonicalFile:獲取檔案的抽象路徑名,相當於絕對路徑

8、long getTotalSpace():獲取檔案的總空間,若檔案在系統D盤下,則獲取了D盤總空間

9、long getFreeSpace():獲取檔案的可用空間,若檔案在系統D盤下,則獲取了D盤的可用空間

10、long getUsableSpace():獲取檔案的可用空間,同getFreeSpace()

11、long length():獲取檔案的大小

12、long lastModified():獲取檔案最後一次修改時間的時間戳

遍歷子目錄類方法

1、String[] list():獲得當前目錄檔案下所有檔名

2、String[] list(FilenameFilter filter):獲得當前目錄檔案下所有檔名,透過FilenameFilter過濾

3、File[] listFiles():獲得當前目錄檔案下所有檔案

4、File[] listFiles(FileFilter filter):獲得當前目錄檔案下所有檔案,透過FileFilter過濾

5、File[] listFiles(FilenameFilter filter):獲得當前目錄檔案下所有檔案,透過FilenameFilter過濾

例子1 讀取檔案的一些基本資訊

public class FileTest {

public static void main(String []args) {

String fileName=”C:\\temp\\myfile。dat”

File myFile=new File(fileName);

If( ! myFile。 exists() ) { // 檔案不存在,則列印不存在訊息

System。err。println(fileName+ “檔案不存在, 程式退出 ”);

return;

}

System。out。println(fileName + “的文字長度為:” + myFile。length() + “位元組!”);

If ( myFile。 isDirectory() ) { // 檔案是一個目錄

System。err。println( fileName+”是一個檔案目錄 !”);

return;

}

}

}

例子2 演示File類中各種方法的使用

import java。io。*;

public class FileTest { //在執行該檔案之前應該先複製一個檔名為File。txt的檔案到當前程式所在的路徑下

public static void main(String args[]) {

System。out。println(“Path separator” +File。pathSeparator); // “;”各個檔案路徑之間的分隔符

System。out。println(“Path separator char” +File。pathSeparatorChar);

System。out。println(“separator ” +File。separator); // “\”檔案與路徑之間的分隔符

System。out。println(“separator char” +File。separatorChar);

File f =new File(“File。txt”);

System。out。println(f);

System。out。println(“檔案是否存在:” + f。exists());

System。out。println(“檔名是:” + f。getName());

System。out。println(“檔案的路徑是:” + f。getPath());

System。out。println(“檔案是絕對路徑是: ” + f。getAbsolutePath());

System。out。println(“檔案是父級是:” + f。getParent());

System。out。println(“是否是檔案: ” + f。isFile());

System。out。println(“是否是目錄: ” + f。isDirectory());

System。out。println(“檔案是:” + f。length());

System。out。println(“檔案是否可讀:” + f。canRead());

System。out。println(“檔案是否可寫: ” + f。canWrite());

System。out。println(“檔案最後修改時間:” + f。lastModified());

} }

例子3 透過File類來實現列出一個目錄下所有的*。java檔案

import java。io。*;

public class FileFilterTest {

public static void main(String args[]) {

File dir =new File(“E:/jdk1。8/bin”);

Filter filter =new Filter(“java”);

String files[]=dir。list(filter); //獲得該目錄下的各個檔名

for(int i=0; i< files。length; i++) { //列出目錄下所有匹配檔案並存儲到String 陣列中。

File f=new File(files[i]);

if(f。isFile()) {

System。out。println(“file ” +f);

}

else {

System。out。println(“sub directory ” + f);

}

}

class Filter implements FilenameFilter {

String extent;

Filter(String extent) {

this。extent=extent;

}

public boolean accept(File dir, String name) {

return name。endsWith(“。” + extent);

}

}

例子4 建立檔案刪除檔案

public class FileTest{

public static void main(String[] args) throws IOException{

File file = new File(“/workpace/text。txt”); //建立檔案:

System。out。println(file。createNewFile()); //注意:檔案所在路徑(在這裡的路徑指:/workpace)必須存在 才能建立檔案(test。txt)

File file1 = new File(“/workpace/dir_test”); //建立資料夾:

System。out。println(file1。mkdir());//如果沒有父路徑,不會報錯,但不會建立資料夾

// file1。mkdirs();//如果父路徑不存在,會自動先建立路徑所需的資料夾

File file2 = new File(“/workpace/text。txt”);

if (file2。exists()) {

System。out。println(file2。delete()); //如果檔案存在,刪除檔案,

}

}

}