求一个批处理删除文件

遍历当前目录下的所有子文件夹,如果子文件夹中不包含特定后缀名的文件则删除该文件夹.

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后缀的文件。
我就是这么干的,希望能够帮到你。如果解决了你的问题,请采纳;如果有疑问,欢迎再次提问。

经常看到问题描述不清或者不完整的问题,至少说一下你需要什么语言实现的代码,或者你需要一个软件?