MATLAB Answers

randomly access a file in matlab

6 views (last 30 days)
jalal Ahmad
jalal Ahmad on 17 Aug 2013
f = dir( myfolder ); ridx = randi(numel(f)); disp( ['Chosen file is: ' f(ridx).name] );
when I run this code for 5 files in the directory the numel shows me 7 instead of 5 with two files with the names of '.' and '.." how can I ommit these two files??

Answers (2)

Sabarinathan Vadivelu
Sabarinathan Vadivelu on 17 Aug 2013
Please specify the type of data you are reading from the current folder in this line.
f = dir(['myfolder\*.jpg']);
or any other formats.

Jan
Jan on 17 Aug 2013
"." is the current folder, while ".." is the parent folder. You can exclude them explicitly:
f = dir(myfolder);
name = {f.name};
f(strcmp(name, '.') || strcmp(name, '..')) = [];

Community Treasure Hunt

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

Start Hunting!