Load files from two different folders
33 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
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 Kommentare
Akzeptierte Antwort
Stephen23
am 24 Feb. 2023
Bearbeitet: Stephen23
am 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 Kommentare
Stephen23
am 25 Feb. 2023
Bearbeitet: Stephen23
am 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
Weitere Antworten (1)
Jacob Ward
am 24 Feb. 2023
Use the addpath() function to add the path to your second folder to the working directory:
0 Kommentare
Siehe auch
Kategorien
Mehr zu Search Path finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!