Convert Cell to string

1 331 vues (au cours des 30 derniers jours)
Robin
Robin le 23 Fév 2013
Commenté : Stephen23 le 3 Jan 2024
I have got a simple question. I want to convert a cell array to a string array, somehow I don't succeed in doing this.
An example:
I' ve got this: a={1650}, which is a cell array. Because I want to concatenate this with other strings I need to convert the cell array to a string array. I have tried many converting functions but I dont get the correct final string array.
Hopefully somebody can help me with this.
Many Thanks.

Réponses (2)

Jonathan Thomet
Jonathan Thomet le 12 Nov 2020
You have this in the documentation.
C = {'Li','Sanchez','Jones','Yang','Larson'}
B = string(C)
That should do the trick.
  9 commentaires
Walter Roberson
Walter Roberson le 2 Jan 2024
To avoid changing values during conversion, use compose instead of plain string . You will need %.754g for exact conversion of numeric values.
Floyd
Floyd le 2 Jan 2024
@Walter Roberson, I'll give this a go. I appreciate it

Connectez-vous pour commenter.


Youssef  Khmou
Youssef Khmou le 23 Fév 2013
hi, You can accomplish that by converting the cell to matrix first then coverting the matrix to string array
B=num2str(cell2mat(A));
  3 commentaires
Walter Roberson
Walter Roberson le 12 Nov 2020
B = cellfun(@val2str, A, 'uniform', 0);
function str = val2str(val)
str = evalc(disp(val));
end
Stephen23
Stephen23 le 3 Jan 2024
Or without EVALC, since R2021a:
B = cellfun(@formattedDisplayText, A, 'uni', 0);

Connectez-vous pour commenter.

Catégories

En savoir plus sur Data Type Conversion dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by