randomly access a file in matlab

1 view (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, '..')) = [];

Categories

Find more on File Operations 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!