Loading files from the folder

17 views (last 30 days)
Chris Dan
Chris Dan on 24 Jan 2020
Commented: Geoff Hayes on 27 Jan 2020
Hello,
I have this code which allows the user to select any folder on the computer and then loads all the .mat files to the directory.
%% Data Acuisition from the folder%%%
pathname = uigetdir;
allfiles = dir(fullfile(pathname,'*.mat'));
out = load(allfiles(1).name);
% load all files in a struct so they can accessed later on
for k = 2: numel(allfiles)
out(k) = load(allfiles(k).name);
end
I want to make changes to it such that, user is able to select some files from the folder and not all of them to be loaded to matlab directory..
Does any one know how can we do it ?

Accepted Answer

Geoff Hayes
Geoff Hayes on 24 Jan 2020
Edited: Geoff Hayes on 24 Jan 2020
hamzah - could you use uigetfile and allow the user to select the files that they are interested in?
[file,path] = uigetfile('*.mat',...
'Select One or More Files', ...
'MultiSelect', 'on');
  7 Comments
Chris Dan
Chris Dan on 25 Jan 2020
Okay, Thanks :)
I am trying to make function which I can call any where to open the folder
Will this work?
out = DataLoading(uigetfile);
function [out] = DataLoading(uigetfile)
[files,pathToFiles] = uigetfile('*.mat',...
'Select One or More Files', ...
'MultiSelect', 'on');
out = {};
if ~iscell(files)
out{1} = load(fullfile(pathToFiles, files));
else
for k = 1:length(files)
out{k} = load(fullfile(pathToFiles, files{k}));
end
end
end
Geoff Hayes
Geoff Hayes on 27 Jan 2020
I don't undertstand the purpose of including the uigetfile in the signature
function [out] = DataLoading(uigetfile)
This input parameter is unnecessary.

Sign in to comment.

More Answers (0)

Categories

Find more on File Operations in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!