1 import java.io.*; 2 import javax.swing.*; 3 public class Delete{ 4 public static void main(String[] args)throws Exception{ 5 String target = JOptionPane.showInputDialog(null,"请输入您要清理垃圾的目录:"); 6 File[] fs = new File(target).listFiles(new FilenameFilter(){ 7 public boolean accept(File dir,String name){ 8 return name.toLowerCase().endsWith(".class"); 9 } 10 }); 11 for(File f:fs){ 12 f.delete(); 13 } 14 } 15 }
只是删除指定目录下的符合条件的文件 如果指定目录下还有子目录 递归调用就可以了
代码如下:
/**
* 删除指定文件夹下的制定格式的所有文件 例如删除.txt结尾的文件
*/
@SuppressWarnings("unused")
private static void delFile(File path){
if(path!=null){
File[] files = path.listFiles(new FilenameFilter(){
public boolean accept(File dir, String name) {
File file = new File(dir,name);
if(file.isDirectory())
delFile(file);
return file.isFile() && name.toLowerCase().endsWith(".java");
}
});
for(File fs:files){
System.out.println(fs);
fs.delete();
}
}
}
public static void main(String[] args) {
delFile(new File("D:/Test"));
}