How do I save structured objects into mat-files?

1 view (last 30 days)
I am dealing with large object in my research. I am not familiar with class oriented programing in MATLAB. However, I wanted to save the object into Mat-files. I tried two following ways. But neither way works out with separate message:
objMain.obj1 = function1(Variables);
objMain.obj2 = function1(Variables);
objMain.obj3 = function1(Variables);
objMain.obj4 = function1(Variables);
dir2Save = 'C:\Documents\Matlab\Research';
fname = ['mainTask' int2str(1)];
save([dir2Save '\' fname '.mat'], objMain);
*Message:* _Error using save
_Argument must contain a string._
save([dir2Save '\' fname '.mat'], '-struct', objMain);
*Message:* _Error using save
The argument to -STRUCT must be the name of a scalar structure variable._
Does any body have any ideas how to solve....
Thanks for your help.
Mahesh
  1 Comment
Stephen23
Stephen23 on 31 Jul 2016
@Mahesh: I fixed your incorrect terminology: an M-file is a script or function, a mat file is a binary file used to store data.

Sign in to comment.

Accepted Answer

the cyclist
the cyclist on 30 Jul 2016
Edited: the cyclist on 30 Jul 2016
Try
save([dir2Save '\' fname '.mat'], 'objMain')
You needed to enclose the variable name in quotes, as the second argument.
  5 Comments
the cyclist
the cyclist on 30 Jul 2016
Cross-platform compatibility, or other reasons?
Mahesh
Mahesh on 30 Jul 2016
I am not sure about fullfile. Could you please help me how to use such. Since I am making file name as variable depending upon the parameters. Thanks for suggestions

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!