• 【matlab】如何批量修改图片命名


    【matlab】如何批量修改图片命名

    (●’◡’●)先赞后看养成习惯😊
    假如我的图片如下,分别是1、2、3、4、5的命名
    在这里插入图片描述

    • 需求一:假如现在我需要在其后面统一加上_behind字符串,并且保留原命名,同时替换掉原先的图片,也就是不copy新的一份,直接在原文件夹中处理,我们可以进行如下代码的编写

    • 导入文件夹图片的路劲
    • 读取所有文件,循环的时候用length就可以自动获取图片数量,而不用自己去设置
    folder_path = 'C:\Users\Desktop\original'; 
    file_list = dir(fullfile(folder_path, '*.png')); % 获取文件夹中所有后缀为.png的文件列表
    
    for i = 1:length(file_list)
        old_name = file_list(i).name;   %获取第 i 个文件的名称
        new_name = [old_name(1:end-4) '_behind.png']; % 在原文件名后添加字符"_behind"并修改后缀为.png
        old_path = fullfile(folder_path, old_name);
        new_path = fullfile(folder_path, new_name); % 构造新旧文件的完整路径
        movefile(old_path, new_path); % 重命名文件
    end
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    结果如下
    在这里插入图片描述

    • 需求二:假如现在我需要在其前面统一加上front_字符串,并且保留原命名,同时替换掉原先的图片,也就是不copy新的一份,直接在原文件夹中处理,我们可以进行如下代码的编写

    folder_path = 'C:\Users\Desktop\original'; 
    file_list = dir(fullfile(folder_path, '*.png')); % 获取文件夹中所有后缀为.png的文件列表
    
    for i = 1:length(file_list)
        old_name = file_list(i).name;   %获取第 i 个文件的名称
        new_name = ['front_',old_name(1:end-4) '.png']; % 在原文件名前添加字符"front_"并修改后缀为.png
        old_path = fullfile(folder_path, old_name);
        new_path = fullfile(folder_path, new_name); % 构造新旧文件的完整路径
        movefile(old_path, new_path); % 重命名文件
    end
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    在这里插入图片描述

    • 需求三:假如现在我需要在其前面统一加上front_字符串,并且保留原命名,但是我想保留原先的图片以及命名,那么我们可以新建一个文件夹来放置copy重命名后的图片,我们可以进行如下代码的编写
    folder1_path = 'C:\Users\Desktop\original'; 
    folder2_path = 'C:\Users\Desktop\later';
    file_list = dir(fullfile(folder1_path, '*.png')); % 获取文件夹中所有后缀为.png的文件列表
    
    for i = 1:length(file_list)
        old_name = file_list(i).name;   %获取第 i 个文件的名称
        new_name = ['front_',old_name(1:end-4) '.png']; % 在原文件名前添加字符"front_"并修改后缀为.png
        old_path = fullfile(folder1_path, old_name);
        new_path = fullfile(folder2_path, new_name); % 构造新旧文件的完整路径
        copyfile(old_path, new_path); % 复制文件
    end
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    在这里插入图片描述

    总结:

    • movefile函数用于移动文件或文件夹到新的位置;
    • copyfile函数用于复制文件或文件夹到新的位置

    更新不易,看到这里如果对你有帮助,欢迎点赞+关注+收藏!

  • 相关阅读:
    使用 C++23 协程实现第一个 co_await 同步风格调用接口--Qt计算文件哈希值
    Servlet转发和重定向的区别,以及在配置文件中获取数据
    Linux Shell脚本的10个有用的“面试问题和解答”
    在代码空间中使用源控制
    葡萄糖-顺铂Glucose-cisplatin|葡萄糖-聚乙二醇-顺铂cisplatin-PEG-Glucose
    2022年亚太C题指导汇总
    卡尔曼及扩展卡尔曼滤波详细推导-来自DR_CAN视频
    RDMA技术原理和三种实现方式
    基于XML配置的AOP
    Springboot 框架中加解密字段后存储数据库
  • 原文地址:https://blog.csdn.net/weixin_44502754/article/details/136790833