package file;
import java.io.File;
import java.io.IOException;
//删除指定文件夹下所有.php文件,如果子文件夹是空文件夹,也删除。
public class DelPHP {
/**
* 循环删除空的文件夹
*
* @param dir
* @throws IOException
*/
private static void deleteEmptyDir(File dir) throws IOException {
if (dir.isDirectory()) {
File[] fs = dir.listFiles();
if (fs != null && fs.length > 0) {
for (int i = 0; i < fs.length; i++) {
File tmpFile = fs[i];
if (tmpFile.isDirectory()) {
deleteEmptyDir(tmpFile);
}
if (tmpFile.isDirectory() && tmpFile.listFiles().length <= 0) {
System.out.println("空目录"+tmpFile.getCanonicalPath()+" 已删除");
tmpFile.delete();
}
}
}
if (dir.isDirectory() && dir.listFiles().length == 0) {
System.out.println("空目录"+dir.getCanonicalPath()+" 已经删除");
dir.delete();
}
}
}
/**
* 循环删除所有.php文件
*
* @param file,singal
*/
public static void delAllFiles(File file,String singal){
if(!file.exists()){
System.out.println("不存在该路径: "+file);
return;
}
if(singal==null||"".equals(singal)){
singal="*";
}
System.out.println(singal+"目录 ["+file.getName()+"]中:");
singal=singal+" *";
File[] files=file.listFiles();
if(files.length>0){
for(File f:files){
if(f.isDirectory()){//如果是目录
delAllFiles(f, singal); //递归
}
else if(f.isFile()&&f.getName().endsWith(".php")){//如果是php文件
System.out.println(singal+" 文件《"+f.getName()+"》已删除");
//f.delete();
}//else
}//for
}//if
else{ //空目录
System.out.println("空目录");
}
}//static
public static void main(String[] args) throws IOException{
String str="G:\\index_files";
DelPHP.delAllFiles(new File(str),null);
DelPHP.deleteEmptyDir(new File(str));
}
}