Is there a load if statement or similar in matlab, way to save workspace variable's seperate mat files?

1 view (last 30 days)
I want to only load a mat file if it isn't loaded. Is there a way to tell if it is loaded?
Is there a way to store every workspace variable as its own mat file by chance?

Accepted Answer

Jan
Jan on 13 Mar 2012
This creates a list of currently defined variables:
List = who;
Then omit ans:
List(strcmp(List, 'ans')) = [];
And save the others:
for k = 1:length(List)
save(List{k});
end
Then this bunch of files can be loaded without overwriting existing variables:
matList = dir('*.mat');
List = who;
for k = 1:length(matList)
name = matList(k).name;
if ~any(strcmp(name, List))
load(name);
end
end
But I would avoid this consequently: 1. load without catching the input to a variable is prone to errors. 2. The debugging of your program will be impeded by this method, because it conceals the source of the values.

More Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!