貓博士

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            2 隨筆 :: 0 文章 :: 0 評論 :: 0 Trackbacks
          1. 遞歸列出指定名字的文件夾
           1    private void listDirs(String path, String keyWord) {
           2        boolean flag = false;
           3        File rootDir = new File(path);
           4        // 判斷文件夾是否存在,如果不存在,返回
           5        if (!rootDir.exists()) {
           6            return;
           7        }

           8        File[] childFiles = rootDir.listFiles();
           9        if (childFiles == null || childFiles.length == 0{
          10            return;
          11        }

          12        for (File file : childFiles) {
          13            if (file.isDirectory()) {
          14                if (file.getName().toString().equals(keyWord)) {
          15                    System.out.println(file.getAbsolutePath());
          16                    flag = deleteDirectory(file.getAbsolutePath());
          17                    if (!flag){
          18                        break;
          19                    }

          20                }

          21                listDirs(file.getAbsolutePath(), keyWord);
          22            }
           else {
          23                continue;
          24            }

          25        }

          26    }

          27

          2. 刪除目錄以及目錄下的文件
           1    public boolean deleteDirectory(String path) {
           2        boolean flag = false;
           3        // 如果path不以文件分隔符結(jié)尾,自動添加文件分隔符
           4        if (!path.endsWith(File.separator)) {
           5            path = path + File.separator;
           6        }

           7        File dirFile = new File(path);
           8        // 如果dir對應的文件不存在,或者不是一個目錄,則退出
           9        if (!dirFile.exists() || !dirFile.isDirectory()) {
          10            return false;
          11        }

          12        flag = true;
          13        // 刪除文件夾下的所有文件(包括子目錄)
          14        File[] files = dirFile.listFiles();
          15        for (int i = 0; i < files.length; i++{
          16            // 刪除子文件
          17            if (files[i].isFile()) {
          18                flag = deleteFile(files[i].getAbsolutePath());
          19                if (!flag)
          20                    break;
          21            }
           // 刪除子目錄
          22            else {
          23                flag = deleteDirectory(files[i].getAbsolutePath());
          24                if (!flag)
          25                    break;
          26            }

          27        }

          28        if (!flag)
          29            return false;
          30        // 刪除當前目錄
          31        if (dirFile.delete()) {
          32            return true;
          33        }
           else {
          34            return false;
          35        }

          36    }

          37

          3. 刪除文件
           1    public boolean deleteFile(String path) {
           2        boolean flag = false;
           3        File file = new File(path);
           4        // 路徑為文件且不為空則進行刪除
           5        if (file.isFile() && file.exists()) {
           6            file.delete();
           7            flag = true;
           8        }

           9        return flag;
          10    }

          11
          posted on 2010-01-13 13:58 貓博士 閱讀(124) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 曲周县| 巴彦县| 柳江县| 乐昌市| 徐州市| 梅河口市| 潞城市| 吉木乃县| 任丘市| 威远县| 贺州市| 伊通| 孟州市| 清徐县| 灵宝市| 民丰县| 乌鲁木齐市| 高州市| 名山县| 翁源县| 泗水县| 岳阳市| 诸暨市| 盐山县| 色达县| 星子县| 昌黎县| 孟津县| 尉犁县| 平度市| 岚皋县| 桂东县| 新干县| 呼和浩特市| 扎兰屯市| 漯河市| 勐海县| 曲阜市| 晋州市| 化德县| 新田县|