Matalb 存储 结构体 struct 仿真过程数据 到 .mat 文件

来源

仿真过程中,使用不同参数进行仿真,为便于后续查看,希望吧数据存储。主要遇到的是 struct 变量存储到.mat 文件遇到问题。

方法

data 变量是一个结构体

save(filename,variables)
save filename

save(‘A.mat’, 'data')
save('A.mat', '-v7.3', '-struct', 'data')
save filename data

使用 command syntax

此时注意直接写 文件名称,如果文件名称是一个字符数组啥的是不行的,改用函数形式使用 save()

使用 function syntax

此时可以把文件保存的日期加到文件名中,便于后续查看时比较文件先后。

filename = ['Opt_Force_Ctrl_F', num2str(Desired_Force), 'N_L', num2str(min(Len)), '_',...
    num2str(max(Len)), '_date_', replace(char(datetime),{':', '-', ' '},'_'),'.mat'];
save(string(filename), 'data')

其中 replace(char(datetime),{':', '-', ' '},'_'),'.mat'] 使用 datetime 函数返回当前日期和时间,replace 函数替换 日期中的连字符,时间中的冒号,还有两者之间的空格。
此外,在save函数中使用 string 函数 强制把 char 类型的 filename 转string。没转的时候 报错,具体原因未查。

你可能感兴趣的:(MATLAB,save,struct,matlab,mat)