我从Web服务得到了一个结果,MatLab很高兴地通知它是1x1结构.但是,当我尝试显示它时(通过输入receivedData并按下enter)我会看到这个:
ResponseData: [5x1 struct]
同样很高兴,我输入以下内容,试图让我看到数据:
struct2array(responseData)
我只得到一堆(不是五个,超过五个)字符串,这些字符串可能是所提供数据列的名称标题.
如何从这种结构中获取所有数据?
小智 3
您可以使用fieldnames从结构中获取数据,然后使用getfield函数迭代显示数据。例如:
structvariable = struct('a',123,'b',456,'c',789);
dataout = zeros(1,length(structvariable)) % Preallocating data for structure
field = fieldnames(a);
for i = 1:length(structvariable)
    getfield(structvariable,field{i})
end
请记住,以单元格getfield形式给出数据,而不是矩阵形式。