File Exchange

image thumbnail

struct2str recursive

version 1.0 (3.23 KB) by

Displays a struct's content in a list box. View a substruct's content by selecting its list entry.

3 Downloads

Updated

View License

A small extension of struct2str by Marco Cococcioni:
- Selecting a substruct in the listbox results in calling struct2str again on the chosen substruct.
- Multidimensional struct-matrices are now completely displayed by making the input struct one-dimensional.

See struct2str for a detailed description.

Comments and Ratings (1)

To be able to handle vectors in the form
[1
2
3
4]

(instead of [1 2 3 4]),
one may for example change from row 152 into:

tmp = getfield(s,{l},fnames{f});
sz = size(tmp);
if (ndims(tmp) == 2) && (sz(2) == 1)
isflipped = 1;
tmp = tmp';
tmp = ['[' num2str(tmp) ']' char(39)];
else
isflipped = 0;
tmp = ['[' num2str(tmp) ']'];
end

                    str = sprintf(fmt1,str,fnames{f}, tmp);
if isflipped
                     cell_str{k} = sprintf(fmt11,fnames{f}, [ '[' num2str(getfield(s,{l},fnames{f})') ']' char(39) ] );
else
                     cell_str{k} = sprintf(fmt11,fnames{f}, [ '[' num2str(getfield(s,{l},fnames{f})) ']' ] );
end
                    k = k + 1;

(and then as the rest of the original code)

MATLAB Release
MATLAB 7.4 (R2007a)
Acknowledgements

Inspired by: STRUCT2STR

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video