How can I convert a struct into a single string, with each element separated by a blank space character?

78 Ansichten (letzte 30 Tage)
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?

Akzeptierte Antwort

MathWorks Support Team
MathWorks Support Team am 3 Jul. 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

Weitere Antworten (0)

Kategorien

Mehr zu Cell Arrays finden Sie in Help Center und File Exchange

Tags

Noch keine Tags eingegeben.

Produkte


Version

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by