吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1718|回复: 4
收起左侧

[Java 原创] 重命名目录以及子目录下的文件名

[复制链接]
小风0010 发表于 2023-8-20 19:05
本帖最后由 小风0010 于 2023-8-20 19:10 编辑



             最近在网上下载了一份资料,准备好好学习一下,但是发现 附带的视频和笔记以及代码 的文件名都被加上了 某某论坛的名字和地址 ,
              视频倒还好,文件名不影响播放,
             但是篡改文件名会导致资料中的markdown文档上的图片不能正常加载,很烦,而且项目代码中的配置文件也不能正常使用,
            于是就随便写了段代码,去除文件名中的 某论坛的名字和地址 ,
            
            下载下来打开文件夹的时候是这样的(这里只是模拟一下当时的情况,案例中的某论坛的名字和地址我自己假设的)
image.png

         
          doc目录下也是一堆被篡改了文件名的文件
                image.png
                看着就很烦,无良的垃圾论坛,于是我就在想干脆直接把整个目录下的文件名处理一下
         大致的思路就是获取指定目录下的文件和子目录,如果是文加就直接重命名,如果是子目录就往下递归
              代码实现如下:
[Asm] 纯文本查看 复制代码
    /**
     *
     * @Param file   目录的抽象
     * @param stupidForum  傻逼论坛的论坛地址,也就是文件名中待替换的值
     * @param replaceValue  替换的值,这里我是直接替换成空字符串,也就是相当于恢复了原来的文件名
     */
    public static void renameStupidForumFileName(String filePath, String stupidForum, String replaceValue) {
        File file = new File(filePath);
        File[] files = file.listFiles();
        //遍历操作
        int count = 0;
        Iterator<File> iterator = Arrays.stream(files).iterator();
        while (iterator.hasNext()){
            File subdirectory = iterator.next();
            // 判断是文件还是子目录
            if (subdirectory.isDirectory()) {
                //子目录继续递归
                renameStupidForumFileName(subdirectory, stupidForum, replaceValue);
            } else {
                //获取文件名
                String fileName = subdirectory.getName();
                //判断文件名中是否包含了 stupidForum
                if (fileName.contains(stupidForum)) {
                    String newName = subdirectory.getParent() + File.separator + fileName.replace(stupidForum, replaceValue);
                    subdirectory.renameTo(new File(newName));
                    count++;
                }
            }
        }
        System.out.println("成功处理: "+ count +" 个文件");
    }



处理完成后效果如下:
image.png

                          






发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

青春作伴 发表于 2023-8-20 19:20
有技术就是想亲历亲为,现成的工具其实也很多
dtsuifeng 发表于 2023-8-20 22:39
爬爬虾 发表于 2023-8-21 20:26
martn 发表于 2023-9-16 22:03
看看先,多谢!!!!!!!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 20:52

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表