Java 菜鳥教程

Java 流程控制

Java 數(shù)組

Java 面向?qū)ο?I)

Java 面向?qū)ο?II)

Java 面向?qū)ο?III)

Java 異常處理

Java 列表(List)

Java Queue(隊列)

Java Map集合

Java Set集合

Java 輸入輸出(I/O)

Java Reader/Writer

Java 其他主題

Java 程序刪除空目錄和非空目錄

Java 實例大全

在此示例中,我們將學(xué)習(xí)在Java中刪除一個空目錄,一個非空目錄和一個具有非空子目錄的目錄。

示例1:刪除空目錄的Java程序

import java.io.File;

class Main {
  public static void main(String[] args) {

    try {
      //創(chuàng)建一個新的文件對象
      File directory = new File("Directory");

      //刪除目錄
      boolean result = directory.delete();

      if(result) {
        System.out.println("目錄已刪除");
      }
      else {
        System.out.println("找不到目錄");
      }

    } catch (Exception e) {
      e.getStackTrace();
    }
  }
}

在上面的示例中,我們使用了File類的delete()方法來刪除名為Directory的目錄。

在此,如果目錄存在,則顯示消息目錄已刪除。否則,將顯示“ 找不到目錄”

要了解有關(guān)文件的更多信息,請訪問Java File。

示例2:刪除非空目錄

在Java中,要刪除非空目錄,我們必須首先刪除該目錄中存在的所有文件。然后,我們可以刪除目錄。

import java.io.File;

class Main {
  public static void main(String[] args) {

    try {
      //創(chuàng)建一個新的文件對象
      File directory = new File("Directory");

      //列出數(shù)組中的所有文件
      File[] files = directory.listFiles();

      //從目錄中刪除每個文件
      for(File file : files) {
        System.out.println(file + " deleted.");
        file.delete();
      }

      //刪除目錄
      if(directory.delete()) {
        System.out.println("目錄已刪除");
      }
      else {
        System.out.println("Directory not Found");
      }

    } catch (Exception e) {
      e.getStackTrace();
    }
  }
}

在上面的示例中,我們已使用for-each循環(huán)刪除目錄中存在的所有文件。一旦刪除了所有文件,便使用delete()方法刪除目錄。

示例3:遞歸刪除非空目錄

import java.io.File;

class Main {

  public static void deleteDirectory(File directory) {

    //文件是否為目錄
    if(directory.isDirectory()) {
      File[] files = directory.listFiles();

      //如果目錄包含任何文件
      if(files != null) {
        for(File file : files) {

          //如果子目錄為非空,則進(jìn)行遞歸調(diào)用
          deleteDirectory(file);
        }
      }
    }

    if(directory.delete()) {
      System.out.println(directory + " 被刪除");
    }
    else {
      System.out.println("目錄未刪除");
    }
  }
  public static void main(String[] args) {

    try {
      //創(chuàng)建一個新的文件對象
      File directory = new File("Directory");

      Main.deleteDirectory(directory);

    } catch (Exception e) {
      e.getStackTrace();
    }
  }
}

在這里,假設(shè)我們有一個名為的非空目錄Directory。將Directory包含2個文件命名file1.txt,并file2.txt和一個名為非空的子目錄Subdirectory。同樣,Subdirectory包含一個名為的文件file11.txt。

現(xiàn)在,當(dāng)我們運行程序時,我們將得到以下輸出。

Directory\file1.txt 被刪除
Directory\file2.txt 被刪除
Directory\Subdirectory\file11.txt 被刪除
Directory\Subdirectory 被刪除
目錄已刪除

在此,首先刪除2個文件,然后遞歸函數(shù)刪除 Subdirectory 內(nèi)的文件。一旦Subdirectory為空,則將其刪除。并且,最后將刪除 Directory 。

Java 實例大全

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清