How to rename several several .mat in a file with rename
Date: 2023-07-12 14:36:18
Hello,
I Have a question about the same subject.
I have several files: FoodS01HealthSession1.mat FoodS01PracticeSession1.mat
FoodS01TasteSession1.mat FoodS01TestSession1.mat
That go from S01 to S021 and I would like to all rename them as following
FoodSub110HealthSession1.mat FoodSub110PracticeSession1.mat FoodSub110TasteSession1.mat FoodSub110TestSession1.mat
from 110 to 130
I cannot manage doing it using the function rename, as I donnnot know how to correctly code the loop nor using the function.
Could anyone help me?
ANSWER
this should work
names = {'Health', 'Practice', 'Taste', 'Test'};
for iName = 1:numel(names)
for iFile=1:21
origName = sprintf('FoodS0%d%sSession1.mat', iFile, names{iName});
newName = sprintf('Food%d%sSession1.mat', iFile+109, names{iName});
movefile(origName, newName);
end
end
untested but should be more or less it. Edit: make the %d without leading zero and added the leading zero for all files.