实现目标描述:选择我有一个大文件,里面有许多子文件夹,子文件夹内都是csv格式的文件,我现在将这个大文件内所有子文件夹的.csv文件的后缀名改为.sps文件
%author foddcus FAFU
%用法:批量修改文件后缀名
clear all
srcDir=uigetdir('Choose source directory.'); %获得选择的文件夹
cd(srcDir);%%更改根路径
files = dir(fullfile(srcDir));%检测是否有二级文件夹
folder_nums = size(files,1);
%%
for j=1:folder_nums-2%这里需要减2,因为头两个目标分别为本文件夹和其父级文件夹
names=getfield(files(j+2),'name');%参考(2)
newfile=[srcDir,'\',names]%组成新文件夹的名称
cd(newfile);
file = dir('*.csv');
len = length(file);
for i = 1 : len %参考(1)处
oldname0 = string(file(i).name);
oldname = strcat(',',oldname0);%strcat - 水平串联字符串
Date=string(regexp(oldname,'.*(?=\.csv)','match'));
newname = strcat(Date,'.sps');
eval(['!rename',char(oldname),char(newname)]);%要用char
end
end
执行以上脚本,会自动跳出文件路径的选择框,只用在案例中选中4-23_1这个文件夹即可
执行脚本完后:所有只文件内的.csv文件的后缀名都变为了.sps
基本上对这个脚本进行根据自身需求的一些修改就可以满足所有类型的批量修改文件名后缀的需求了
程序参考
(1)利用matlab批量修改文件名称或后缀_天才小傲傲的博客-CSDN博客_matlab修改文件后缀
(2)matlab用字符串按名索引结构体(struct)的成员变量(field)_HackerTom的博客-CSDN博客_matlab 字符串索引
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/105377.html