対処法
コード
//画像のURL(保持用)
string pictureURL = string.Empty;
//WebClientを作成する
WebClient webClient = new();
//Streamを作成する
Stream stream = null;
//URLからStreamを取得する
try { stream = webClient.OpenRead(pictureURL); }
//例外が発生しても、発生しなくても
finally
{
//Streamを取得できなかったら(無効なURLを受け取ったら)
if(stream == null)
{
//TODO:例外が発生した際の処理
}
}
説明
「try-catch」において
例外が発生した際の処理は
ふつう、「catch{}」に記述するが
例外を「catch」できなかった場合は「catch{}」は実行されないため
例外を「catch」できない場合は「catch{}」に何を記述しても意味が無い。
しかし、
「finally{}」は例外が発生しても、発生しなくても実行されるため
「finelly{}」に条件分岐で例外が発生した際の処理を記述すれば良い。
コメント