How to rename several several .mat in a file with rename

9 次查看(过去 30 天)
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?
Thanks a lot

采纳的回答

Titus Edelhofer
Titus Edelhofer 2018-9-13
编辑:Titus Edelhofer 2018-9-13
Hi Solene,
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.
Hope this helps,
Titus
  6 个评论
Stephen23
Stephen23 2018-9-14
Solene Frileux's "Answer" moved here:
Thank you so much Titus, it works perfectly well. I wish you a very pleasant day, as mine just got really brighter thanks to you!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Variables 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by