How to change directory in a for loop

Hey Guys, I have a .mat file where I have written all the directories I will use. Lets say one of the directory is 'C:\Users\md\Desktop\A_I_001'. I want to make this directory changed in each iteration. so, the 'j' value will change in each time. How I can do that? Thanks in advance.
load tmp.mat; j='directory'; a = j; A =dir( fullfile(a, '*.png') );

Answers (1)

per isakson
per isakson on 27 Mar 2014
Edited: per isakson on 27 Mar 2014
Load the mat-file content to a variable
S = load('tmp.mat');
Inspect S to learn how the folder names are stored. I can only guess and assumes that in the mat-file each folder name is in one string variable. If so this loop should work
for folder_name = transpose( fieldnames( S ) )
A = dir( fullfile( S.(folder_name{:}), '*.png' );
...
...
end

4 Comments

folder names are stored like this: 'C:\Users\md\Desktop\A_I_001' 'C:\Users\md\Desktop\A_J_001'
Yes, but those are the string values. There must be variable names of some kind! Run
S = load('tmp.mat')
and tell me what appears in the command window. Or run
clear
load('tmp.mat')
whos
Hi, Thank you for your answer This is the output that I can see
Name Size Bytes Class Attributes
tmp 1x1 300 cell
tmp is a scalar, 1x1. What does
tmp{:}
show? And
S = load('tmp.mat')
?
Search a way to display the folder names in the command window and show the commands needed.

Sign in to comment.

Categories

Products

Tags

No tags entered yet.

Asked:

Md
on 27 Mar 2014

Edited:

on 28 Mar 2014

Community Treasure Hunt

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

Start Hunting!