Create a filelist with files (ending in _BTcom.mat) from different subfolders (all the subfolders are in the same folder)

4 views (last 30 days)
HI,
I am trying create a filelist from files in different subfolders. All the files are in the same main folder 'C:\Users\paola\Desktop\MATLAB\20mM-new'. I wrote this but it doesn't really work
folder='C:\Users\paola\Desktop\MATLAB\20mM-new'
d=dir(folder)
subf=d([d.isdir])
for k=1:numel(subf)
subfolder=subf(k).name
subf1=fullfile(folder,subfolder)
f=dir([subf1 '\*_BTcom.mat'])
for ii=1:numel(f)
file=fullfile(subf1,f(ii).name);
end
end

Answers (1)

Thomas Jensen
Thomas Jensen on 13 Apr 2021
Hi Paola,
The best approach to search for files inside subfolders is creating a recursive function.
  4 Comments
Thomas Jensen
Thomas Jensen on 13 Apr 2021
Hi Paola,
Sorry it did not work for you. I tested on Matlab 2017b and it worked fine. The file list is displayed in the command window.
Could you please confirm that you are calling the function my_filelist('C:\Users\paola\Desktop\MATLAB\20mM-new') and what is displayed in the command window?
Best regards,
Paola
Paola on 13 Apr 2021
It doesn't let me call the function my_filelist('C:\Users\paola\Desktop\MATLAB\20mM-new') so I create a variable folder=['C:\Users\paola\Desktop\MATLAB\20mM-new'] and run your script but it displays just the name of the folder. Sorry I am new with matlab

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!