递归删除与给定的文件名不符的文件

互联网 | 编辑: uker编辑2 2007-03-11 00:00:00转载

import java.io.*; /* * 递归删除文件夹内与给定的文件名不符的文件和所有的文件夹 */

import java.io.*;
/*
 * 递归删除文件夹内与给定的文件名不符的文件和所有的文件夹
 */
public class Test3 {
 public static void checkName(String[] filelist) {
  File file = new File("D:\\temp");
  File[] files = file.listFiles();
  boolean flag = true;
  for (int i = 0; i < files.length; i++) {
   for (int j = 0; j < filelist.length; j++) {
    if (files[i].isFile()) {
     if (files[i].getName().equals(filelist[j])) {
      flag = false;
      break;
     } else {
      flag = true;
     }
    } else if (files[i].isDirectory()) {
     del(files[i]);
    }

   }
   if (flag) {
    files[i].delete();
   }
  }

 }

 private static void del(File f) {
  if (f.isFile()) {
   f.delete();
  } else if (f.isDirectory()) {
   String[] files = f.list();
   for (int i = 0; i < files.length; i++)
    del(new java.io.File(f.getAbsolutePath() + "\\" + files[i]));
   f.delete();
  }
 }

如果想了解更多相关信息以及详细咨询,欢迎点击中英网http://www.uker.net/,或发email至:echo@uker.netUKer.net资深编辑将为您详细解答。

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑