当前位置: 首页 > article >正文

源码分享1:批量修改PDF文件名称

批量修改文件名称

  • 运行效果
  • 解析

运行效果

执行后 36266郜一凡200304000038内部调拨
修改为 1234一二 200304000038 四个字的

在这里插入图片描述

在这里插入图片描述

解析

输入需要修改的文件目录
输入完成后
会将文件夹中的目录的 文件名 修改为 保留文件名中间部分 修改前缀和后缀

import os 
import re
import tkinter as tk
from tkinter import messagebox

def rename_pdf_files(folder_path, new_prefix, new_suffix):
    # 遍历指定文件夹中的所有文件
    for filename in os.listdir(folder_path):
        if filename.endswith('.pdf'):
            # 使用正则表达式匹配文件名中的中间部分
            match = re.search(r'(\d+).*?(\d+)', filename)
            if match:
                # 提取中间部分
                middle_part = match.group(2)
                # 构建新的文件名
                new_filename = f"{new_prefix}{middle_part}{new_suffix}.pdf"
                # 旧文件的完整路径
                old_file_path = os.path.join(folder_path, filename)
                # 新文件的完整路径
                new_file_path = os.path.join(folder_path, new_filename)
                try:
                    # 重命名文件
                    os.rename(old_file_path, new_file_path)
                    print(f"已将 {filename} 重命名为 {new_filename}")
                except Exception as e:
                    print(f"重命名 {filename} 时出错: {e}")

def start_renaming():
    folder_path = entry.get()
    if not os.path.exists(folder_path):
        messagebox.showerror("错误", f"你输入的路径 {folder_path} 不存在,请检查后重新输入。")
        return
    new_prefix = '1234一二'
    new_suffix = '保留规则'
    rename_pdf_files(folder_path, new_prefix, new_suffix)
    messagebox.showinfo("完成", "文件重命名操作已完成。")

# 创建主窗口
root = tk.Tk()
root.title("PDF 文件重命名")
root.geometry("400x400")

# 创建提示标签
label = tk.Label(root, text="请输入文件所在路径:")
label.pack(pady=20)

# 创建输入框
entry = tk.Entry(root, width=50)
entry.pack(pady=10)

# 创建开始按钮
button = tk.Button(root, text="开始重命名", command=start_renaming)
button.pack(pady=20)

# 运行主循环
root.mainloop()

http://www.kler.cn/a/561455.html

相关文章:

  • 【MySQL篇】MySQL操作库
  • LIS系统源码,医院检验系统源码,lis软件源码
  • Java Web开发实战与项目——项目集成与部署
  • 1 什么是微服务?MybatisPlus框架
  • NVIDIA DLI引领创新课程:基于提示工程的LLM应用开发探索
  • 如何在Ubuntu 22.04或20.04 Linux上安装MobaXterm
  • 力扣2454. 下一个更大元素 IV
  • 电脑键盘知识
  • 【视频2 - 4】初识操作系统,Linux,虚拟机
  • windows断网,提示无法自动将ip协议堆栈绑定到网络适配器的解决办法
  • Oracle 数据泵迁移步骤规范
  • 双周报Vol.66: String模式匹配增强、while条件支持使用 is 表达式、新增IDE安装器...多项核心技术更新!
  • ui设计公司兰亭妙微分享:科研单位UI界面设计
  • 【C# 变量字符串还原转义字符】
  • TensorFlow深度学习实战(9)——构建VGG模型实现图像分类
  • LeetCode2587
  • 姿态矩阵/旋转矩阵/反对称阵
  • 使用 Python 进行批量解压 .rar 文件
  • electron 更新服务
  • 33、SparkStreaming作业监控,日志收集,自动重启shell脚本