MATLAB Answers

Renames a lot of files in directory

1 view (last 30 days)
Oktavian Jason
Oktavian Jason on 3 Mar 2020
Commented: Oktavian Jason on 3 Mar 2020
Hello, I have a lot of .mat files in a folder and I want to rename it from ex : 65300106179 into something like Flight 10001 and so on. Below is my code
f = dir( fullfile( projectdir, '**', '*.mat') );
for kk = 1:numel(f)
fileFrom = f(kk).name;
fileTo = ['Flight',erase(f(kk).name,'1000%d.mat'),'.mat'];
movefile(fileFrom,fileTo);
end
The problem I have is the file name changed into Flight65300106179.mat. Any idea where I did wrong?

Accepted Answer

KSSV
KSSV on 3 Mar 2020
f = dir( fullfile( projectdir, '**', '*.mat') );
for kk = 1:numel(f)
fileFrom = f(kk).name;
fileTo = ['Flight','1000%d.mat','.mat'];
movefile(fileFrom,fileTo);
end
  6 Comments
Oktavian Jason
Oktavian Jason on 3 Mar 2020
Do you have any idea how I can rename on subfolder too?
Example : Folder A : Flight 10001-Flight 10010, Folder B : Flight 10011-Flight 10020

Sign in to comment.

More Answers (1)

Bhaskar R
Bhaskar R on 3 Mar 2020
fileTo = sprintf('Flight 1000%d.mat',kk);

Community Treasure Hunt

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

Start Hunting!