Use string as a path

55 views (last 30 days)
Radek
Radek on 17 Oct 2013
Commented: Jan on 17 Oct 2013
Hello,
i want to use strings from a cell array as path. How can i do it?
I want to write a code, that loops over all my subfolders. The path to the folders are in my cell-array.
My code are:
if true
% code
dirs=regexp(genpath(currentpath),['[^;]*'],'match');
size_dirs=size(dirs);
for i=1:size_dirs(1,2)
data=dir([dirs(1,i),\*.tsv']); <<< here i want my subfolder from the cell-array in dirs!!
anzahl=numel(data);
.. do something
end
The error is: argument must contain a string. But in my cell-arrays are only strings :( can someone help??

Answers (1)

ES
ES on 17 Oct 2013
No.. dirs is a cell array of strings.
Type whos and you will see
dirs 1x28 7098 cell
modify your code slightly to
data=dir([dirs{i},'\*.tsv']);
to make it work.
  1 Comment
Jan
Jan on 17 Oct 2013
fullfile is slightly smarter than concatenating with a hardcoded file separator - this considers different operating systems and folders like "C:\" :
data=dir(fullfile(dirs{i}, '*.tsv'));

Sign in to comment.

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!