Check for missing object in workspace

In a script, how do I check to see whether an object (array) exists before I try to operate on it. Something like:
if object exists then

Answers (2)

From the help for "exist()":
The following example indicates that testresults is both a variable in the workspace and a folder on the search path:
exist('testresults','var')
ans =
1
exist('testresults','dir')
ans =
7
Stephen
Stephen on 11 Aug 2011
Thanks, but the exists function returns an error if the object does not exist. The help documentation says it should return a zero, so I assumme this is a bug.
Is there another test? I don't want to use a try-catch because the selected recovery algorithm may depend on whether the error is due to object==null or some other type of error.

2 Comments

Oops, my mistake, there is no bug. I was using exist(variable_name) instead of exist('variable_name').
Can this string be deleted?
I was just going to say that. That's a very common mistake. No you can't delete the string - otherwise exist() would have no arguments whatsoever that you're passing in. You have to pass in something.

Sign in to comment.

Categories

Tags

No tags entered yet.

Asked:

on 11 Aug 2011

Community Treasure Hunt

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

Start Hunting!