服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

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

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();
  }
 }

扫描关注微信公众号