MATLAB Answers

How can I create a list of files of the defined typ that are included in the folder?

2 views (last 30 days)
Hello,
I should use this code (see below) to create a list o files of the defined typ that are included in the folder. Unfortunately, I get an error. It is saying that my pathname is too long. What can I do?
function fileList= createFileList(typ, folder)
fileCount =0;
listofFiles={};
folders=genpath(folder);
folders=regexp([folders ';'],'(.*?);','tokens');
for pathNr=1:size(folders,2)
folder=cell2mat(folders{pathNr});
if ~isempty(folder)
files=dir(fullfile(folder,strcat('*.',typ)));
if ~isempty(files)
for fileNr=1:size(files,1)
fileCount=fileCount+1;
file=strcat(folder,'\',files(fileNr).name);
listofFiles{fileCount,1}=file;
end
end
end
end
fileList=listofFiles;
end

Accepted Answer

Stephen Cobeldick
Stephen Cobeldick on 3 Jan 2021
Edited: Stephen Cobeldick on 3 Jan 2021
folder = '...';
typ = 'm';
T = sprintf('*.%s',typ);
G = genpath(folder);
F = regexp(G,'[^:]+','match');
C = cell(size(F));
for k = 1:numel(F)
C{k} = dir(fullfile(F{k},T));
end
S = vertcat(C{:});
L = fullfile({S.folder},{S.name})

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!