黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java刪除文件夾下所有文件的方法

Java刪除文件夾下所有文件的方法

更新時間:2022-08-03 11:07:01 來源:動力節點 瀏覽5133次

如何在Java中刪除文件夾下的所有文件?動力節點小編來告訴大家。

1.使用FileUtils類

來自 Apache Commons IO的FileUtils類提供了幾個方便的文件操作實用程序。您可以使用該FileUtils.cleanDirectory()方法遞歸刪除目錄中的所有文件和子目錄,而不刪除目錄本身。

import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException; 
public class Main {
    public static void main(String[] args) throws IOException {
        File directory = new File("/path/to/dir");
        FileUtils.cleanDirectory(directory);
    }
}

要遞歸刪除目錄及其中的所有內容,您可以使用該FileUtils.deleteDirectory()方法。

import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException; 
public class Main {
    public static void main(String[] args) throws IOException {
        File directory = new File("/path/to/dir");
        FileUtils.deleteDirectory(directory);
    }
}

或者,您可以使用該FileUtils.forceDelete()方法刪除一個目錄和所有子目錄。

import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
public class Main {
    public static void main(String[] args) throws IOException {
        File directory = new File("/path/to/dir");
        FileUtils.forceDelete(directory);
    }
}

2.使用File.delete()方法

該File.delete()方法刪除由指定路徑名表示的文件或目錄。有許多方法可以有條件地刪除使用它的目錄中的文件和子目錄。

例如,以下解決方案僅刪除主目錄中的文件,所有子目錄保持不變。

import java.io.File;
import java.util.Objects; 
public class Main {
    public static void main(String[] args) {
        File directory = new File("/path/to/dir"); 
        for (File file: Objects.requireNonNull(directory.listFiles())) {
            if (!file.isDirectory()) {
                file.delete();
            }
        }
    }
}

如果您使用 Java 8 或更高版本,則可以使用:

import java.io.File;
import java.util.Arrays;
import java.util.Objects;
import java.util.function.Predicate; 
public class Main {
    public static void deleteDirectory(File directory) {
        Arrays.stream(Objects.requireNonNull(directory.listFiles()))
                .filter(Predicate.not(File::isDirectory))
                .forEach(File::delete);
    } 
    public static void main(String[] args) {
        File directory = new File("/path/to/dir");
        deleteDirectory(directory);
    }
}

您可以輕松擴展解決方案以遞歸刪除目錄中的所有文件和子目錄。請注意,File.delete()當且僅當目錄為空時,您可以使用該方法刪除目錄。

import java.io.File;
import java.util.Objects; 
public class Main {
    public static void deleteDirectory(File directory) {
        for (File file: Objects.requireNonNull(directory.listFiles())) {
            if (file.isDirectory()) {
                deleteDirectory(file);
            } else {
                file.delete();
            }
        }
    } 
    public static void main(String[] args) {
        File directory = new File("/path/to/dir");
        deleteDirectory(directory);
    }
}

這是使用 Stream API 的版本。它利用該Files.walk()方法并刪除目錄中的所有文件和子目錄以及目錄本身。

import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Comparator; 
public class Main {
    public static void deleteDirectory(Path directory) throws IOException {
        Files.walk(directory)
                .sorted(Comparator.reverseOrder())
                .map(Path::toFile)
                .forEach(File::delete);
    } 
    public static void main(String[] args) throws IOException {
        Path directory = Path.of("/path/to/dir");
        deleteDirectory(directory);
    }
}

如果您需要從目錄及其所有子目錄中刪除“僅文件”,您可以執行以下操作:

import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path; 
public class Main {
    public static void deleteDirectory(File directory) throws IOException {
        Files.walk(directory.toPath())
                .filter(Files::isRegularFile)
                .map(Path::toFile)
                .forEach(File::delete);
    } 
    public static void main(String[] args) throws IOException {
        File directory = new File("/path/to/dir");
        deleteDirectory(directory);
    }
}

以上就是關于“Java刪除文件夾下所有文件的方法”介紹,希望對大家的學習能夠有所幫助哦。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 在线观看黄a | 成年人免费的视频 | 一级一级一级毛片 | 免费看一级黄色片 | 宅男色影院 | 久久婷婷是五月综合色狠狠 | 国产1卡2卡三卡四卡网站 | 日韩国产成人精品视频 | 日韩在线aⅴ免费视频 | 999香蕉视频 | 精品国产乱码一区二区三区 | 成人hd| 天堂中文在线乱码 | 欧美色图综合网 | 欧美日韩国产伦理 | 国产黄在线观看免费观看软件视频 | 欧美性猛交ⅹxxx乱大交免费 | 宅男色影院 | 最近手机中文在线视频 | 六月丁香啪啪六月激情 | 色片免费| 99毛片| 人人玩人人添人人澡免费 | 日韩精品毛片 | 成人小视频在线观看 | 亚洲福利天堂 | 国产女人91精品嗷嗷嗷嗷 | 国产丫丫视频私人影院 | 全部免费的毛片视频观看 | 91精品国产一区二区三区左线 | 亚洲综合精品一区二区三区中文 | 亚洲欧美日韩另类在线一 | 欧美亚洲91| 激情综合五月 | 一级夫妻录像 | 国产亚洲精品自在久久77 | 亚洲精品第一综合99久久 | 欧美日韩性生活 | 羞羞的视频在线免费观看 | 亚洲免费播放 | 日韩精品欧美高清区 |