考慮以下幾點:C#:多個catch子句
try {
FileStream fileStream = new FileStream("C:\files\file1.txt", FileMode.Append); }
catch (DirectoryNotFoundException e)
{ MessageBox.Show("Directory not found. " + e.Message); }
catch (IOException e)
{ MessageBox.Show("Other IO Error. " + e.Message); }
catch (Exception e)
{ MessageBox.Show("Other Error. " + e.Message); }
將一個DirectoryNotFoundException
例外得到所有三個catch
條款或處理的只是第一個?
您應該始終捕獲所有異常,因爲用戶不應該看到堆棧跟蹤等異常的一般顯示。 – 2011-03-21 13:44:48
不,總是**。最通用的異常只能在表示層的頂部捕獲,因爲這是唯一可以對它們做任何事情的地方(顯示一個很好的錯誤信息)。 – MattDavey 2011-03-22 12:11:56