creating a function that reads into the directory

1 view (last 30 days)
Hi, i want to create a function that uses the file prefix, directory name and file type as inputs to pick up files that i want to process from my directory. Below is my code but it is not working, it says Dot indexing is not supported for variables of this type. As an example, i might be looking for all excel spreadsheets that have the prefix DynamicData in my directory pwd, but i want my code to give the output as TableFiles. Please help !!!
FilePrefix ='DynamicData';
DirectoryName = pwd;
filetype='.xlsx'
FileList = strcat(['DirectoryName','FilePrefix','*','filetype']);
TableFiles = {};
for LenFlLst = 1:numel(FileList)
TableFiles = {FileList.name};
end

Accepted Answer

Ameer Hamza
Ameer Hamza on 30 May 2020
you also need to use dir() to get actual file names. Try this code
% FilePrefix ='DynamicData';
FilePrefix ='test';
DirectoryName = pwd;
filetype='.xlsx';
FileList = fullfile(DirectoryName,[FilePrefix,'*',filetype]); % fullfile is better to construct file paths
FileList = dir(FileList);
TableFiles = cell2table({FileList.name}.', 'VariableNames', {'Filenames'});

More Answers (0)

Categories

Find more on File Operations in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!