java程式實現刪除本地檔案

月盡天明發表於2012-02-17

import java.io.File;

public class Test {
public static void main(String args[]) {
   Test t = new Test();
   delFolder("d:/test");
   System.out.println("OK");
}

// 刪除資料夾
// param folderPath 資料夾完整絕對路徑

public static void delFolder(String folderPath) {
   try {
    delAllFile(folderPath); // 刪除完裡面所有內容
    String filePath = folderPath;
    filePath = filePath.toString();
    java.io.File myFilePath = new java.io.File(filePath);
    myFilePath.delete(); // 刪除空資料夾
   } catch (Exception e) {
    e.printStackTrace();
   }
}

// 刪除指定資料夾下所有檔案
// param path 資料夾完整絕對路徑
public static boolean delAllFile(String path) {
   boolean flag = false;
   File file = new File(path);
   if (!file.exists()) {
    return flag;
   }
   if (!file.isDirectory()) {
    return flag;
   }
   String[] tempList = file.list();
   File temp = null;
   for (int i = 0; i < tempList.length; i++) {
    if (path.endsWith(File.separator)) {
     temp = new File(path + tempList[i]);
    } else {
temp = new File(path + File.separator + tempList[i]);
    }
    if (temp.isFile()) {
     temp.delete();
    }
    if (temp.isDirectory()) {
       delAllFile(path + "/" + tempList[i]);// 先刪除資料夾裡面的檔案
       delFolder(path + "/" + tempList[i]);// 再刪除空資料夾
     flag = true;
    }
   }
   return flag;
}
}

相關文章