Read files from folder and subfolder

129 views (last 30 days)
Hi all,
I intend to read multiple files in the for loop operation from the folder and subfolder, which got different file extensions. For instnace, the main folder (say Folder A) got .jpg fiels and subfolder A1 got .bmp files.
%% read files from folder A
for f = 1:1:1
if (f>=1) && (f<=9)
fname_strt = 'B0000' ;
elseif (f>=10) && (f<=99)
fname_strt='B000';
elseif (f>=100) && (f<=999)
fname_strt='B00';
else
fname_strt='B0';
end
fname_end = num2str(f);
fname = strcat(fname_strt,fname_end,'.jpg');
I=imread(fname);
G = imagesc(x,y,flipud(I));
G.AlphaData = 0.5;
hold on;
%%%%%%% read files from subfolder A1
if (f>=1) && (f<=9)
fname_strt = 'B0000' ;
elseif (f>=10) && (f<=99)
fname_strt='B000';
elseif (f>=100) && (f<=999)
fname_strt='B00';
else
fname_strt='B0';
end
fname_end = num2str(f);
fname = strcat(fname_strt,fname_end,'.jpg');
h=imread(fname);
H1 = imagesc(flipud(h));
H1.AlphaData = 0.5;
axis equal
hold on;
end

Accepted Answer

Ameer Hamza
Ameer Hamza on 1 Dec 2020
You can use dir() and for-loop to iterate over files in a folder to process them. This link shows a general template: https://www.mathworks.com/help/matlab/import_export/process-a-sequence-of-files.html. For example,
%% read files from folder A
files = dir('*.jpg');
for i = 1:numel(files)
filepath = fullfile(files(i).folder, files(i).name);
img = imread(filepath);
% process the file
end
%% read files from subfolder A1
files = dir(fullfile('A1', '*.bmp'));
for i = 1:numel(files)
filepath = fullfile(files(i).folder, files(i).name);
img = imread(filepath);
% process the file
end
  11 Comments
Turbulence Analysis
Turbulence Analysis on 1 Dec 2020
While my file is loacted in my D drive, it becomes
loadvec ('D:\New folder\A1\B00001.vc7') and this is working perfectly..
However, if i read from my server, it will be
loadvec ('\\Data\data\New folder\A1\B00001.vc7'); Here comes the error..

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!