日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

java 文件递归删除文件夹_Java十行代码实现递归删除文件夹中所有文件

發(fā)布時間:2023/12/19 java 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 文件递归删除文件夹_Java十行代码实现递归删除文件夹中所有文件 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

遞歸刪除文件夾中所有文件

要遞歸首先需要有方法。遞歸,即方法自己調(diào)用自己。一般在程序中很少使用,但在這個實現(xiàn)中,我們無法知道文件夾的深度,更無法根據(jù)深度來實現(xiàn)循環(huán)的嵌套。

遞歸兩個重要條件:

終止邊界

重復(fù)執(zhí)行相同的問題

例如我們要實現(xiàn)求1*2*3*4*5,我們可以把5和1*2*3*4的結(jié)果相乘,而如何獲取1*2*3*4的結(jié)果呢,自然就是4與1*2*3*4的結(jié)果相乘了。而在這一過程中,我們始終是做同一件事:將n與n-1的階乘進行相乘。當(dāng)然不可能無止境的乘下去,所以我們需要一個終止條件:n == 1。在這兩個條件下,我們便可以實現(xiàn)遞歸求得n的階乘了。

用代碼實現(xiàn)如下:

1 public static int jieCheng(intn) {2 if (n==1) { //終止條件

3 return 1;4 } else{5 return n * jieCheng(n-1); //n * (n-1)!

6 }7 }

遞歸求階乘

類 File

Java文件類以抽象的方式代表文件名和目錄路徑名。該類主要用于文件和目錄的創(chuàng)建、文件的查找和文件的刪除等。

用到的方法

String?pathname)?通過將給定路徑名字符串轉(zhuǎn)換為抽象路徑名來創(chuàng)建一個新 File 實例。

要刪除一個目錄下的所有文件和文件夾,我們可以分為這么幾步:

首先我們指定一個根目錄作為我們要刪除的對象;

例舉該目錄下所有子文件和文件夾;

遍歷子目錄文件,如果為文件,則直接刪除;如果為文件夾,則執(zhí)行 2

將所有子文件、子文件夾都刪除完畢后,刪除文件夾本身

如下圖所示,把圈代表文件,方塊代表文件夾,則得到如下的執(zhí)行順序:

判斷為不為空的文件夾,到2

判斷為不為空的文件夾,到3

判斷為空的文件夾,刪除自己,到4

判斷為文件,刪除自己,到5

此時該文件夾中所有內(nèi)容都已刪除為空,刪除自己,到6

不為空文件夾,到7

為文件,刪除自己,到8

空文件夾,刪除自己,到9

此時根目錄已經(jīng)為空文件夾了,再刪除自己,至此,所有文件和文件夾刪除完畢

用代碼實現(xiàn)就是以下的效果:

1 public static voiddelDir(File file) {2 if(file.isDirectory()) {3 File zFiles[] =file.listFiles();4 for(File file2 : zFiles) {5 delDir(file2);6 }7 file.delete();8 } else{9 file.delete();10 }11 }

十行代碼刪除所有文件

總結(jié)

以上是生活随笔為你收集整理的java 文件递归删除文件夹_Java十行代码实现递归删除文件夹中所有文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。