You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Java批量重命名文件夹文件以移除指定冗余文本?

Java移除文件名中的签名时间戳

针对你需要移除文件名中_signed_YYYYMMDDHHMMSS这类文本的需求,这里提供一个适合初学者的Java实现方案,逻辑清晰且容易理解:

核心思路

通过正则表达式匹配文件名中固定格式的_signed_+14位时间戳(YYYYMMDDHHMMSS),将这部分内容替换为空,保留原文件名的前缀和后缀。

正则表达式说明

使用正则_signed_\d{14}来匹配目标内容:

  • _signed_:匹配固定的前缀文本
  • \d{14}:匹配连续14个数字(对应时间戳的格式)

完整代码示例

import java.io.File;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class FileRenameTool {
    public static void main(String[] args) {
        // 替换为你需要处理的文件目录路径
        String targetDir = "C:\\你的文件目录路径";
        File dir = new File(targetDir);
        
        // 校验目录是否存在且是目录
        if (!dir.exists() || !dir.isDirectory()) {
            System.out.println("指定的目录不存在或不是有效目录");
            return;
        }
        
        // 编译正则表达式,提升效率
        Pattern pattern = Pattern.compile("_signed_\\d{14}");
        
        // 遍历目录下的所有文件
        File[] files = dir.listFiles();
        if (files != null) {
            for (File file : files) {
                if (file.isFile()) { // 只处理文件,跳过目录
                    String originalName = file.getName();
                    Matcher matcher = pattern.matcher(originalName);
                    
                    // 如果匹配到目标内容,执行重命名
                    if (matcher.find()) {
                        String newName = matcher.replaceFirst("");
                        File newFile = new File(dir, newName);
                        
                        // 执行重命名操作,判断是否成功
                        if (file.renameTo(newFile)) {
                            System.out.println("重命名成功:" + originalName + " -> " + newName);
                        } else {
                            System.out.println("重命名失败:" + originalName);
                        }
                    }
                }
            }
        }
    }
}

使用说明

  1. 将代码中的targetDir替换为你实际存放文件的目录路径
  2. 运行代码前,建议先备份文件,避免意外情况
  3. 代码只会处理目录下的直接文件,不会递归处理子目录(如果需要递归,可以添加递归遍历的逻辑)

针对你的示例文件测试

原文件名:

20230626_EdcPgw_0012041844_0001131023000001_ETAX_signed_20240103121502.pdf
20230626_EdcPgw_0531072999_0001131023000003_ETAX_signed_20240103121502.pdf
20230626_EdcPgw_4322053252_0001131023000005_ETAX_signed_20240103121503.pdf
20230626_EdcPgw_ETAX-PWD_signed_20240103121521.PWD

重命名后:

20230626_EdcPgw_0012041844_0001131023000001_ETAX.pdf
20230626_EdcPgw_0531072999_0001131023000003_ETAX.pdf
20230626_EdcPgw_4322053252_0001131023000005_ETAX.pdf
20230626_EdcPgw_ETAX-PWD.PWD

完全符合你的需求。

内容的提问来源于stack exchange,提问作者iChinJO

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 00:22:08