LoginSignup
1
1

More than 3 years have passed since last update.

【MATLAB】警告の有無で処理を分岐させたい場合

Last updated at Posted at 2018-12-23

Matlabの実行時に警告が出た際に別の処理をしたいと思ったが、
普通の例外処理(try、catch)はエラーのみにしか使えない。

例えば、addpathコマンドを使用して検索フォルダに任意の
パスを追加する場合、記載したパスがそもそも存在しなかった
ケースを検知して別の処理に移行したい。

そこで、警告が出たことを別の方法で検知しようと考えた。

[方法]

latwarn(最後に出た警告内容)を利用

[詳細]


clear all; % ワークスペースからアイテムを削除

lastwarn(''); % 最後に出た警告の内容をリセット

crnt = pwd; % カレントフォルダを格納

% 以下フォルダを検索対象に追加
addpath(strcat(crnt, 'folder_A'));
addpath(strcat(crnt, 'folder_B'));
addpath(strcat(crnt, 'folder_C'));

[msg, msgID] = lastwarn; % 最後に出た警告の内容を格納

if strcmp(msgID, 'MATLAB:dispatcher:pathWarning')

  % 警告が出た時に実施したい処理を記述

else

  % 警告が出なかった時に実施したい処理を記述

end
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1