Comment puis-je continuer avec une boucle lorsqu'une erreur se produit dans MATLAB?
Je suis à la conversion de certains .dat fichiers .tapis de fichiers à l'aide d'une fonction. Je suis à l'appel de cette fonction à l'intérieur d'une boucle pour convertir un certain nombre de fichiers. Il y a certains cas où mon .dat fichier est endommagé et que la fonction ne peut pas convertir une erreur se produit, l'arrêt de la boucle.
Maintenant, ma question est: Est-il une commande dans lequel, lorsque l'erreur se produit, il doit passer le courant (i) de la valeur dans la boucle et d'aller à la prochaine augmentation de la valeur (dans mon cas, le fichier suivant)?
OriginalL'auteur user446468 | 2010-09-13
Vous devez vous connecter pour publier un commentaire.
Vous pouvez le faire à l'aide d'un TRY/CATCH déclaration avec CONTINUER. Placez les éléments suivants à l'intérieur de votre boucle:
EDIT:
Amro suggère une bonne idée dans son commentaire ci-dessous. Vous pouvez émettre un avertissement indiquant que l'erreur s'est produite et pour qui fichier, ou peut-être vous pouvez même enregistrer la liste des fichiers qui ont échoué à convertir correctement. Pour faire ce dernier, vous pouvez d'abord l'initialiser une cellule vide de tableau avant de commencer votre boucle:
Puis, après que vous attrapez l'exception, mais, avant d'émettre la
continue
commande, ajoutez le chemin/nom du fichier en cours de converti à la liste:Lors de votre boucle est terminée, vous pouvez ensuite regarder
failedFiles
de voir facilement ce qui n'a pas convertir correctement.try, ..., catch ME, warning(ME.identifier, ME.message), continue, end
OriginalL'auteur gnovice