遍历当前目录下的所有子文件夹,如果子文件夹中不包含特定后缀名的文件则删除该文件夹.
public static void main(String[] args) {
File file = new File("");
isfile(file,".txt");
}
public static boolean isfile(File filename,String filetype) {
boolean flag = false;
File[] files = filename.listFiles();
for (int i = 0; i < files.length; i++) {
if (files[i].isDirectory() && files[i].listFiles().length>0) {
// 表明是目录,进入该目录,去判断每一个文件
if (!isfile(filename,filetype)) {
filename.delete();
}
} else {
if (files[i].getName().endsWith(filetype)) {
flag = true;
break;
}
}
}
return flag;
for /f "delims=" %%i in ('dir /b/a-d/s %DestPath%\') do (
if not exist %%i\*.后缀 rd %%i
)
选中第一个要删除的文件并按住ctrl键选中最后一个要删除的文件,单击enter键,就删除了。
怎么会有这种需求的呢,用JS不行吗,用FSO不行吗!
这种,百度一堆一堆的。
你好,dos批处理是没有 保留特定文件而删除其他文件的功能的,当然我们可以用其他方法实现,比如:
del /f /s /q G:\test\*.txt
del /f /s /q G:\test\*.ini
可以删除G:\test目录(包括子目录)下的所有txt或者ini后缀的文件。
我就是这么干的,希望能够帮到你。如果解决了你的问题,请采纳;如果有疑问,欢迎再次提问。
经常看到问题描述不清或者不完整的问题,至少说一下你需要什么语言实现的代码,或者你需要一个软件?