skip a load error

8 visualizzazioni (ultimi 30 giorni)
joseph Frank
joseph Frank il 12 Mar 2011
Commentato: Pippa Williams il 1 Feb 2022
Hi,
I want to load some mat files in my folder according to a certain criteria. Sometimes this file doesn't exist. How can I continue to load the next file with causing the program to stop because of the error? example:
UID=unique(ID);
for i=1:size(UID,1) filename=['Data' num2str(UID(i,1))]; load (filename,'DataFinal')
%%% here I want to manipulate the data end
if load returns an error that such a file doesn't exist , how can I continue the loop without any interruption. Regards

Risposta accettata

Teja Muppirala
Teja Muppirala il 12 Mar 2011
You can use a try (catch) block. For example
x = 5;
try
load('asdasdasd.mat') %I can't load this file
catch
disp('Did not load that last file, but it''s ok.');
end
x = x+1;
disp(x)
For more information:
help try

Più risposte (1)

Matt Tearle
Matt Tearle il 12 Mar 2011
You can use exist to check if the file exists, but perhaps another approach would be to use cellstr(ls('Data*')) to get a list of the files first, then loop over those.

Categorie

Scopri di più su Workspace Variables and MAT-Files in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by