Java如何通過File類方法刪除指定文件夾中的全部文件
前言
對delete的解說
那么問題來了!!!
(②中的問題,怎么刪除文件夾里所有文件,想必很多同學(xué)也和我一樣懵,)
別著急(往下看)
要用到的方法
(遞歸思想) 如果文件夾里面還有文件夾,就繼續(xù)往下找(可能不太官方,個人理解)
接下來 代碼展示
方法一:
package com.study; import java.io.File; import java.io.IOException; /** 1. 應(yīng)用場景 2. delete刪除只能刪除空文件夾 和文件 3. 刪除指定文件夾 */ public class Test1 { public static void main(String[] args) throws IOException { File f = new File("D://B"); deleteFile(f);//刪除完后并沒有刪除根目錄 f.delete();//刪除根目錄 if (!f.exists()){ //控制臺打印 System.out.println("刪除成功"); } } private static void deleteFile(File file) throws IOException { /** * File[] listFiles() * 返回一個抽象路徑名數(shù)組,這些路徑名表示此抽象路徑名表示的目錄中的文件。 */ File[] files = file.listFiles(); if (files!=null){//如果包含文件進(jìn)行刪除操作 for (int i = 0; i <files.length ; i++) { if (files[i].isFile()){ //刪除子文件 files[i].delete(); }else if (files[i].isDirectory()){ //通過遞歸的方法找到子目錄的文件 deleteFile(files[i]); } files[i].delete();//刪除子目錄 } } } }
方法二: 和上面一樣,把上面if代碼塊里的替換即可
if (files!=null){//如果包含文件進(jìn)行刪除操作 for (File f:files) { //判斷遍歷出的文件是不是文件 if (f.isFile()){ //如果是則直接刪除 f.delete(); }else if (f.isDirectory()){//通過遞歸的方法找到文件夾里的文件 deleteFile(f); } f.delete();//刪除子目錄 } }
思路
通過File類刪除文件夾全部內(nèi)容:
只有當(dāng)目錄中全部文件刪除掉之后才能刪除目錄通過遞歸方式進(jìn)入子目錄最后刪除根目錄
總結(jié)
到此這篇關(guān)于Java如何通過File類方法刪除指定文件夾中的全部文件的文章就介紹到這了,更多相關(guān)Java File類方法刪除指定文件夾文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實(shí)現(xiàn)EasyCaptcha圖形驗(yàn)證碼的具體使用
Java圖形驗(yàn)證碼,支持gif、中文、算術(shù)等類型,可用于Java Web、JavaSE等項(xiàng)目,下面就跟隨小編一起來了解一下2021-08-08java中JSONObject轉(zhuǎn)換為HashMap(方法+main方法調(diào)用實(shí)例)
這篇文章主要介紹了java中JSONObject轉(zhuǎn)換為HashMap(方法+main方法調(diào)用實(shí)例),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11Java Spring-IOC容器與Bean管理之基于注解的方式案例詳解
這篇文章主要介紹了Java Spring-IOC容器與Bean管理之基于注解的方式案例詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08關(guān)于Java數(shù)組聲明、創(chuàng)建、初始化的相關(guān)介紹
這篇文章主要是關(guān)于Java數(shù)組聲明、創(chuàng)建、初始化的相關(guān)介紹,并給出其對應(yīng)的代碼,需要的朋友可以參考下2015-08-08Java8并發(fā)新特性CompletableFuture
這篇文章主要介紹了Java8并發(fā)新特性CompletableFuture,CompletableFuture針對Future接口做了改進(jìn),相比Callable/Runnable接口它支持多任務(wù)進(jìn)行鏈?zhǔn)秸{(diào)用、組合、多任務(wù)并發(fā)處理,下面文章更多相關(guān)內(nèi)容得介紹,需要的小伙伴可以參考一下2022-06-06升級springboot3之自動配置導(dǎo)入失效問題及解決
這篇文章主要介紹了升級springboot3之自動配置導(dǎo)入失效問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07Java如何使用Iterator迭代器刪除集合重復(fù)選項(xiàng)
這篇文章主要介紹了Java如何使用Iterator迭代器刪除集合重復(fù)選項(xiàng),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-02-02