MATLAB:.mat文件以1x1结构打开

时间:2015-11-25 07:49:25

标签: matlab file structure mat

好的,我有一个结构:

    sub_info(1)= struct('Name',info_array{1},'Number',info_array{2},
'Date',info_array{3}, 'Student_ID', info_array{4});

    mat_struct = 'matstruct.mat'
    save(mat_struct, 'sub_info')

但是当我尝试打开.mat文件时。它以1x1结构打开。有没有办法以mat格式加载它? 谢谢

1 个答案:

答案 0 :(得分:2)

让我们定义一个简单的结构变量

sub_info(1)= struct('Name','aaa','Number','bbb');

并将其保存到文件中:

save('file', 'sub_info')

使用load两种方式

  • 没有输出参数load fileload('file')

    这会在工作区中生成原始变量sub_info

    >> load file
    >> whos
      Name          Size            Bytes  Class     Attributes
      sub_info      1x1               260  struct
    >> sub_info
    sub_info = 
          Name: 'aaa'
        Number: 'bbb'              
    
  • 输出参数x = load('file')。这会生成一个struct ,其字段是文件中包含的变量(因此在这种情况下x只有一个字段sub_info):

    >> x = load('file');
    >> whos
      Name      Size            Bytes  Class     Attributes
      x         1x1               384  struct              
    >> x
    x = 
        sub_info: [1x1 struct]
    >> x.sub_info
    ans = 
          Name: 'aaa'
        Number: 'bbb'