How can I convert a struct into a single string, with each element separated by a blank space character?
78 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
MathWorks Support Team
le 3 Juil 2018
Réponse apportée : MathWorks Support Team
le 5 Juil 2018
I have a 2x1 structure with 3 fields. All the elements are numeric. I want to convert this structure into a single character vector, with each element separated by a blank space character. How can I do this?
Réponse acceptée
MathWorks Support Team
le 3 Juil 2018
This can be done using the following code:
%Create structure with 3 fields
cc
struc.a = 134;
struc.b = 2.324;
struc.c = 33.87;
struc(2).a = 48769;
struc(2).b = 56.543;
struc(2).c = 67.654;
struc
%struct to cell
cel = struct2cell(struc);
si = size(cel);
cel = reshape(cel,si(1),si(3));
%cell to matrix
mat = cell2mat(cel)
%matrix to str
strR = mat2str(mat);
%adding spaces and removing extra characters
strR = strrep(strR,';',' ');
strR = strrep(strR,'[','');
strR = strrep(strR,']','')
%The ordering will be row wise
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Cell Arrays 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!