Retrieving strings from struct variable
10 views (last 30 days)
Show older comments
Hello,
What I am trying to do is retrieve strings from a struct variable and store them in a vector. The struct variable is 16x1 with the first field holding the string data.
Here is what I tried, for example:
---------------
for i = 1:16
stringVector(i) = structVar(i).stringField;
end
---------------
Here is the error I am receiving:
"??? In an assignment A(:) = B, the number of elements in A and B must be the same."
Any thoughts?
0 Comments
Accepted Answer
Sean de Wolski
on 20 Jul 2011
stringvector should be a cell
stringvector = cell(16,1)
for ii = 1:16
stringvector{ii} = structVar(ii).stringField
end
You could also skip the for-loop with
stringvector = {structVar.stringfield}
0 Comments
More Answers (2)
Fangjun Jiang
on 20 Jul 2011
Your strings may have different length. Thus, it is better to use cell array of strings. change your line to be:
stringVector{i} = structVar(i).stringField
0 Comments
See Also
Categories
Find more on Structures in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!