構造体配列はwritestructでXML形式に出力できますが、そのままではExcel形式にならないので、struct2tableを使って構造体をテーブルに変換してからwritetableでファイル出力します。
サンプルコードです。
dataInfo = dicominfo('CT-MONO2-16-ankle.dcm');
dataInfoTbl = struct2table(dataInfo, 'AsArray', true);
writetable(dataInfoTbl, 'out.xlsx')
このDICOMデータではNameOfPhysiciansReadingStudyやOperatorsNameが構造体の入れ子になっているので、それもファイルに出力するには以下のように入れ子の構造体を配列に変換しておきます。
dataInfo = dicominfo('CT-MONO2-16-ankle.dcm');
fieldsNames = fieldnames(dataInfo);
for n=1:length(fieldsNames)
if isstruct(dataInfo.(fieldsNames{n}))
dataInfo.(fieldsNames{n}) = struct2array(dataInfo.(fieldsNames{n}));
end
end
dataInfoTbl = struct2table(dataInfo, 'AsArray', true);
writetable(dataInfoTbl, 'out.xlsx')