文件名批量更改——MATLAB
close all
clear
clc
x=dir('G:\熵值训练\训练集\*.jpg');%要改的文件
for i=1:length(x)
x1=x(i).name;%获取当前文件名
a=sprintf('%d',i);%正整数命名文件
x2=num2str(a);
x3=strcat(x2,'.jpg');
copyfile(['G:\熵值训练\训练集\',x1],['G:\熵值训练\训练集\new\',x3]);
end
相关函数:
sprintf:用格式控制,数字转换为字符串
num2str:数字转为字符串
strcat:横向连接字符串
copyfile:将前者路径中文件复制到后者路径中
继文件名批量更改后又需要更改文件名中某一特定字符,比如我的是需要将“-”改成“_”
close all
clear
clc
x=dir('C:\Users\27851\Desktop\labelme\验证集\*.JPG');%要改的文件
for i=1:length(x)
x1=x(i).name;%获取当前文件名
x2=strrep(x1,'-','_')
copyfile(['C:\Users\27851\Desktop\labelme\验证集\',x1],['C:\Users\27851\Desktop\labelme\验证集\new\',x2]);
end
就是strrep函数啦,简单吧,人家全名叫——查找并替换子字符串(emmm…)
语法及说明:newStr = strrep(str,old,new) 将 str 中出现的所有 old 都替换为 new。