How to store strings into array?

2 views (last 30 days)
anu
anu on 26 Aug 2016
Commented: anu on 29 Aug 2016
I am reading filename from directory and want to store it into array.
srcFiles = dir('E:\abc\*.bmp'); % the folder in which ur images exists
for i = 1 : length(srcFiles)
filename = strcat('E:\abc\',srcFiles(i).name);
names(i,:)=filename;
end
I am getting following error ??? Undefined function or variable 'names'.
  3 Comments
Azzi Abdelmalek
Azzi Abdelmalek on 26 Aug 2016
You don't need cellfun
F=fullfile(P,N)
Stephen23
Stephen23 on 26 Aug 2016
@Azzi Abdelmalek: thank you, I changed the comment.

Sign in to comment.

Accepted Answer

Adam
Adam on 26 Aug 2016
I wouldn't expect you to be getting that specific error, but strings need to be stored in a cell array, not a numeric array generally:
names{i} = filename;
You may want to presize names though as
names = cell.empty( length(srcFiles), 0 );
or something similar.
  5 Comments
Azzi Abdelmalek
Azzi Abdelmalek on 27 Aug 2016
I think the reason is obvious, your cell array is a row vector, then you have just to transpose it
names=names'
anu
anu on 29 Aug 2016
Thanks a lot.

Sign in to comment.

More Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 26 Aug 2016
names=fullfile('E:\abc\',{srcFiles.name})

Categories

Find more on Loops and Conditional Statements 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!