Save base workspace MAT file from GUI

1 view (last 30 days)
Jason
Jason on 18 Nov 2011
Guys -
I'm writing a GUI in which I'd like to put a pushbutton to save the entire base workspace to a .mat file. Problem is I don't know how to do that from the GUI subfunction workspace. Can anyone point me to the right approach or write a couple lines I can put in the pushbutton's callback function to save the base workspace as .mat?

Accepted Answer

Jan
Jan on 18 Nov 2011
I do not think, that this method have enough control over what is written. But if you really want to save the base workspace to a MAT file:
evalin('base', 'save(''FileName.mat'')');
  3 Comments
Jan
Jan on 18 Nov 2011
FileName = 'test.mat';
evalin('base', ['save(''', FileName ''')']);
Jason
Jason on 19 Nov 2011
Thanks Jan, you rock!

Sign in to comment.

More Answers (1)

Naz
Naz on 19 Nov 2011
Here is what I would do: for saving a particular set of variables in the struct you can create a struct and save it:
structDATA=struct('your1var',handles.your1var,'your2var',handles.your2var);
save ('filename', 'structDATA');
If you want to save all the variables from handles, then just do:
save ('filename', 'handles');
I hope this will work

Community Treasure Hunt

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

Start Hunting!