• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

利用MATLAB批量对文件重命名

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

https://www.jianshu.com/p/cac7d97ee083

% 先获取指定路径下的所有特定文件名称,此处用到dir函数
path = 'D:\2019年上半年文件\2019下半年文件\基础部党费计算材料\基础部党费计算材料\基础部党总支党员19年1-3月工资\';
Files= dir(strcat(path,'*.xls'));%这是要改的文件名的目录,我的是xls文件

% 将获取到的文件名称变量写入到一个指定的Excel文件中,
% 这里因为我们获取到的Files变量是一个元胞数组,每个原胞中有name属性的变量,
% 所以要应用循环来将每个元胞数据中的name变量提取出来。
LengthFiles = length(Files);
for i = 1:LengthFiles
    d=Files(i).name;
    f(i)=cellstr(d);  %转化为字符串再进行赋值
end
f=f.';  %转置一下
xlswrite('D:\Matlab\matlab_rename_data.xlsx',f,'sheet1');
% 先将名字数据写入Excel数据中,以便后续在Excel中修改数据,再将修改好的数据重新读取

% 在Excel文件中按自己想需求修改文件名称。
% 修改完之后需要做的就是如何把修改完之后的名称变量按顺序重新命名给对应的文件。
% 这里先把修改完的名称变量从Excel文件中读取出来。
[data,file_id]  = xlsread('D:\Matlab\matlab_rename_data.xlsx', 'sheet1', 'A1:A78');
% 重新读取的修改好的名字变量。
% 这里可以指定读取的具体单元格
% 比如采用xlsread('PATH', 'sheet1', 'A1:A78')这种写法也可

% 跟写入Excel文件过程类似,将Excel中的名称变量写回每个对应的文件也需要用到循环。
% 这里为了不破坏原有文件,我们选择copyfile函数把文件复制为新文件到其他地址。
for i=1:LengthFiles  
    x1=  Files(i).name;
    x2= file_id{i};
    %注意此处是大括号而不是小括号因为file_id(i)是cell类型但是file_id{i}是string类型
    copyfile([path x1],['D:\Matlab\处理好的数据\' x2]);
    %复制到“处理好的数据”文件夹中,请确保该路径有相应文件夹
end


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Delphi对话框初始地址InitialDir发布时间:2022-07-18
下一篇:
Delphi7下实现HTTP的Post操作转发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap