Load files from two different folders
    17 views (last 30 days)
  
       Show older comments
    
Hi, 
I need to upload files from two different folders. I wrote this but it woking just from one folder. How can I add the second folder? 
dirname=['D:\Shared\MATLAB\100min\BT']
cd(dirname)
filelist = dir([basename '*_BTlength.mat'])
Thanks 
0 Comments
Accepted Answer
  Stephen23
      
      
 on 24 Feb 2023
        
      Edited: Stephen23
      
      
 on 24 Feb 2023
  
      Do NOT use ADDPATH or CD or any other messing around with the MATLAB search path just for acessing data files.
All MATLAB functions which import/export data files accept relative/absolute filenames. Using relative/absolute filenames is more robust, more efficient, and easier to debug than messing around with CD or the search path. You should use relative/absolute filenames.
For example:
P = 'D:\Shared\MATLAB\100min\BT'; % got rid of the superfluous square brackets.
S = dir(fullfile(P,'*_BTlength.mat'));
for k = 1:numel(S)
    F = fullfile(S(k).folder,S(k).name);
    % do whatever you want with absolute filename F, e.g.:
    D = load(F)
end
See also:
3 Comments
  Stephen23
      
      
 on 25 Feb 2023
				
      Edited: Stephen23
      
      
 on 25 Feb 2023
  
			"I would like to add another folder"
It is easy to specify two paths, e.g.:
P1 = 'D:\Shared\MATLAB\100min\BT';
P2 = 'D:\Shared\MATLAB\100min-rep2\BT';
S = [...
    dir(fullfile(P1,'*_BTlength.mat'));...
    dir(fullfile(P2,'*_BTlength.mat'))];
for k = 1:numel(S)
    F = fullfile(S(k).folder,S(k).name);
    % do whatever you want with absolute filename F, e.g.:
    D = load(F)
end
Alternatively you can use wildcards in the path name as well, e.g.:
P = 'D:\Shared\MATLAB\100min*\BT';
S = dir(fullfile(P,'*_BTlength.mat'));
for k = 1:numel(S)
    F = fullfile(S(k).folder,S(k).name);
    % do whatever you want with absolute filename F, e.g.:
    D = load(F)
end
More Answers (1)
  Jacob Ward
      
 on 24 Feb 2023
        Use the addpath() function to add the path to your second folder to the working directory:
0 Comments
See Also
Categories
				Find more on Search Path 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!

