<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 用 Java 遞歸刪除目錄 > 原文: [https://howtodoinjava.com/java/io/delete-a-directory-with-all-files-inside-it/](https://howtodoinjava.com/java/io/delete-a-directory-with-all-files-inside-it/) 如果您正在使用 Java swing 應用程序/桌面應用程序,則有時可能需要從文件系統中刪除其中包含所有內部目錄和文件的目錄。 您可以在下面的代碼示例中直接刪除目錄以及目錄中所有包含文件的目錄。 它分兩步遞歸工作: 1. 首先刪除目錄中的所有文件。 然后 2. 它刪除目錄本身 ## 使用 `java.nio.file.Files`(Java 7) 下面的代碼示例使用 [**`Files.walkFileTree()`**](https://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html#walkFileTree%28java.nio.file.Path,%20java.nio.file.FileVisitor%29 "Files.walkFileTree() method") 方法和 [**`SimpleFileVisitor`**](https://docs.oracle.com/javase/7/docs/api/java/nio/file/SimpleFileVisitor.html "SimpleFileVisitor") 執行刪除操作。 ```java package example; import java.io.IOException; import java.nio.file.FileVisitResult; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.SimpleFileVisitor; import java.nio.file.attribute.BasicFileAttributes; public class DeleteDirectoryNIO { public static void main(String[] args) { Path dir = Paths.get("c:/temp/innerDir"); try { Files.walkFileTree(dir, new SimpleFileVisitor<Path>() { @Override public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { System.out.println("Deleting file: " + file); Files.delete(file); return FileVisitResult.CONTINUE; } @Override public FileVisitResult postVisitDirectory(Path dir, IOException exc) throws IOException { System.out.println("Deleting dir: " + dir); if (exc == null) { Files.delete(dir); return FileVisitResult.CONTINUE; } else { throw exc; } } }); } catch (IOException e) { e.printStackTrace(); } } } Output: Deleting file: c:\temp\innerDir\data.txt Deleting file: c:\temp\innerDir\logging.log Deleting file: c:\temp\innerDir\test.png Deleting file: c:\temp\innerDir\test.txt Deleting dir: c:\temp\innerDir ``` ## 使用 `java.nio.file.Files`(Java 8) 從 Java 8 開始,您可以將 Java NIO 操作與 Java 流結合使用,上述方法變得非常簡潔。 ```java public class DeleteDirectoryNIOWithStream { public static void main(String[] args) { Path dir = Paths.get("c:/temp/innerDir"); Files.walk(dir) .sorted(Comparator.reverseOrder()) .map(Path::toFile) .forEach(File::delete); } } ``` 在這里,`Files.walk()`返回表示目錄本身之前目錄(即文件)內容的路徑流。 此后,它將`Path`映射到`File`并刪除每個文件。 現在,您可以使用`delete()`方法刪除文件本身。 ## 使用 commons-io Apache commons IO 模塊具有類[`FileUtils`](https://commons.apache.org/proper/commons-io/javadocs/api-2.5/org/apache/commons/io/FileUtils.html)。 可以使用`deleteDirectory(file)`方法刪除目錄以及其中的所有子目錄和文件。 ```java import org.apache.commons.io.FileUtils; import java.io.File; public class DeleteDirectoryCommonsIO { public static void main(String[] args) { File file = FileUtils.getFile("c:/temp/innerDir"); FileUtils.deleteDirectory( file ); } } ``` 每當您要**刪除目錄和其中的所有文件**時,請使用以上方便的代碼示例。 學習愉快!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看