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

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

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

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

如何在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刪除文件夾下所有文件的方法”介紹,希望對大家的學習能夠有所幫助哦。

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产欧美亚洲精品第一页久久肉 | 有码视频在线观看 | 九草在线免费观看 | 黄色在线免费看 | 曰皮视频在线播放免费的 | 国产免费一级高清淫曰本片 | 视频一区亚洲 | 免费看曰批女人的视频 | 天天se天天cao| 视频一本大道香蕉久在线播放 | 九九全国免费视频 | 亚洲精品在线播放视频 | 亚洲成精品动漫久久精久 | 欧美午夜在线观看理论片 | 无码中文av有码中文av | 黄色短视频网站 | 美女视频黄a视频全免费网站色窝 | 青在线视频 | 免费黄色三级网站 | 欧美家庭影院 | 韩国日本三级在线观看 | 久久亚洲一区二区 | 国产激情视频在线播放 | 波多野结衣在线视频播放 | 免费一级特黄特色大片在线 | 国产精品人成在线播放新网站 | 国产精品午夜免费观看网站 | 丁香综合五月 | 亚洲综合色一区 | 成人网18视频网站 | 男女免费网站 | 亚洲欧美日韩在线不卡 | 国产精品七七在线播放 | 日韩黄色一级视频 | 操皮视频 | 在线观看国产一区亚洲bd | a级黄色毛片三 | 亚洲天堂在线播放 | 怡红院日本一道日本久久 | 亚洲手机在线 | 成年人色网站 |