用Java批量删除文件夹里那些带(1)(2)...且真实重复的文件

话不多说,直接上代码

import java.io.File;

public class Deltwo {
    
    
    public static void main(String[] args) {
    
    

        String path = "D:\\Kashi\\";
        File dir = new File(path);
        File[] files = dir.listFiles();
        int k = 0;
        for (File file : files) {
    
    

            if (!file.getName().endsWith("(1).mp4") &&
                    !file.getName().endsWith("(2).mp4") &&
                    !file.getName().endsWith("(3).mp4") &&
                    !file.getName().endsWith("(1).jpg") &&
                    !file.getName().endsWith("(2).jpg") &&
                    !file.getName().endsWith("(3).jpg")) {
    
    

                String realname = file.getName();
                String keyname = realname.substring(0, realname.length() - 4);
                System.out.println("\n完整文件名:" + realname);
                System.out.println("\n纯文件名:" + keyname);
                if (realname.endsWith(".jpg")) {
    
    
                    for (int i = 1; i <= 3; i++) {
    
    
                        File delfile = new File(path + keyname + "(" + i + ").jpg");
                        if (delfile.isFile()) {
    
    
                            delfile.delete();
                            System.out.println("\n正在删除: " + delfile.getName());
                            k++;
                        }
                    }
                }

                if (realname.endsWith(".mp4")) {
    
    
                    for (int i = 1; i <= 3; i++) {
    
    
                        File delfile = new File(path + keyname + "(" + i + ").mp4");
                        if (delfile.isFile()) {
    
    
                            delfile.delete();
                            System.out.println("\n正在删除: " + delfile.getName());
                            k++;
                        }
                    }
                }
            }
        }
        System.out.println("\n\n删除文件数:" + k);

    }

}

代码简单,随便改改就能用。

猜你喜欢

转载自blog.csdn.net/ghcony/article/details/126862223