File和遞歸

01:file的概述

1.在電腦中的文件或者目錄在java中都使用File來(lái)進(jìn)行描述

2.File的使用

1.導(dǎo)包:java.io.File

2.創(chuàng)建對(duì)象

Constructor

File(File parent,String child)

File(String pathname)

File(String parent,String child)

File(uri)

3.方法的使用

在描述文件路徑的時(shí)候:對(duì)于Win OS來(lái)講 路徑之間使用\,對(duì)于其他Unix,Mac,Linux都是使用/ 其實(shí)可以通用的

02:File對(duì)象的創(chuàng)建

構(gòu)建File對(duì)象的三種方法:

public File(String path):路徑

public File(String parent,String child):父路徑,子文件名

public File(File parent,String child):父目錄File對(duì)象,子文件名

public class Demo01 {

? ? public static void main(String[] args) {

? ? ? ? String path1 = "D:\\abc\\IT書(shū)籍\\Java從入門到精通.pdf";

? ? ? ? //public File(String path)

? ? ? ? File f1 = new File(path1);

? ? ? ? System.out.println("f1 = " + f1);

? ? ? ? // public File(String parent,String child)

? ? ? ? //D:\abc\IT書(shū)籍\Java從入門到精通.pdf

? ? ? ? String parent = "D:\\abc\\IT書(shū)籍"; //父目錄

? ? ? ? String child = "Java從入門到精通.pdf"; //該目錄下的文件

? ? ? ? File f2 = new File(parent, child);

? ? ? ? System.out.println("f2 = " + f2);

? ? // public File(File parent,String child)

? ? ? ? File f3 = new File(new File(parent),child);

? ? ? ? System.out.println("f3 = " + f3);

?}

}

執(zhí)行效果:

f1=D:\abc\IT書(shū)籍\Java從入門到精通.pdf

f2=D:\abc\IT書(shū)籍\Java從入門到精通.pdf

f3=D:\abc\IT書(shū)籍\Java從入門到精通.pdf

創(chuàng)建File的注意事項(xiàng):

不管字符串描述文件路徑是否存在,都可以使用這個(gè)字符串去創(chuàng)建一個(gè)File對(duì)象

03 File對(duì)象的獲取相關(guān)方法

1.public String getAbsolutePath():返回此File的絕對(duì)路徑名字符串。

絕對(duì)路徑就是從盤符開(kāi)始的路徑

2.public String getPath():將此File轉(zhuǎn)換為路徑名字符串(構(gòu)造對(duì)象使用的什么路徑,就是什么路徑)。

字符串路徑和File對(duì)象的轉(zhuǎn)化

字符串路徑-->File對(duì)象:構(gòu)造方法

File對(duì)象-->字符串路徑:getPath()

3.public String getName():返回由此File表示的文件或目錄的名稱。(簡(jiǎn)短名稱)

4.public long length():返回由此File表示的文件長(zhǎng)度【大小】。

5.public String getParent():獲取父目錄的字符串

6.public File getParentFile():獲取父目錄的File對(duì)象

04相對(duì)路徑和絕對(duì)路徑

絕對(duì)路徑:從盤符開(kāi)始直到該文件的具體路徑

相對(duì)路徑:相對(duì)于項(xiàng)目的根路徑【項(xiàng)目中常用】

05 文件判斷功能

public boolean exists():此File表示的文件或目錄是否實(shí)際存在。

public boolean isDirectoty:此File表示是否為目錄。

3.public boolean ifFile():此File表示是否為文件。

注意:如果是一個(gè)不存在的文件,既不是文件夾也不是文件,調(diào)用isDirectory(),isFile()都會(huì)返回一個(gè)false結(jié)果

06創(chuàng)建刪除方法

public boolean createFile():當(dāng)且僅當(dāng)具有該名稱的文件尚不存在時(shí),創(chuàng)建一個(gè)新的空文件。

2.public boolean delete():刪除由此File表示的文件或目錄

如果刪除的目錄,那么目錄要為空,否則刪除將會(huì)失敗

gai

該方法刪除是永久刪除,要謹(jǐn)慎使用

創(chuàng)建文件夾

public boolean mkdir():創(chuàng)建由此File表示的目錄。

public boolean mkdirs():創(chuàng)建由此File表示的目錄,包括任何必須但不存在的父目錄

07文件目錄的遍歷

文件目錄的遍歷方法:

1.public String[] list();返回一個(gè)String數(shù)組,表示該File目錄中的所有子文件或目錄。只能獲取

當(dāng)前目錄下的所有文件的簡(jiǎn)短名稱,以字符串?dāng)?shù)組返回

2.public File[] listFiles():返回一個(gè)File數(shù)組,表示該File目錄中的所有子文件或目錄。

只能獲取當(dāng)前目錄下的所有文件的對(duì)象【不包含孫目錄的內(nèi)容】,以File數(shù)組返回。

當(dāng)調(diào)用兩個(gè)方法獲取子目錄時(shí),一定要做判斷,判斷是否為目錄【文件夾】

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

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

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