構造化例外処理を利用したエラー処理例 (1個) (SNo.070) | |
使用コントロール | Button4 |
その他条件 | WindowsXP(Vista) Visual Basic 2005(VB2008) |
Visual Basic .NET では以下のような 「例外処理」 を利用することができます。
|
|
★ 構造化例外処理を利用したエラー処理例
Private Sub Button4_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button4.Click '構造化例外処理例 Dim sr As System.IO.StreamReader Dim fileOpen As Boolean = True Try ' ここにエラー発生の可能性があるコードを記入します。 '存在しないファイルを開きエラーを発生させる sr = New System.IO.StreamReader("test.txt", System.Text.Encoding.Default) Catch ex As Exception 'Catch と共に使用して、キャッチされたエラーを指定します ' ここに、Try ブロックで発生したエラー処理コードを記入します。 MessageBox.Show(ex.Message) '現在の例外を説明するメッセージを表示 '下記のように入れ子にもできます Try sr = New System.IO.StreamReader("..\..\test.txt", System.Text.Encoding.Default) '下記は実際に存在するファイルでテストして下さい。 'sr = New System.IO.StreamReader("test.txt", System.Text.Encoding.Default) Catch MessageBox.Show("正しいファイル名を選択してやり直して下さい。") fileOpen = False End Try Finally 'Finally ステートメント : 省略できます。 'Try ステートメントの実行が終了する時は何時でも Finally ブロックが実行されます If fileOpen Then '例外の有無に関係なく実行したいコードを記入します。 Debug.WriteLine(sr.ReadToEnd) 'ストリームを閉じ、システム リソースを解放 sr.Close() MessageBox.Show("ファイルをオープンしました。") End If End Try MessageBox.Show("エラー処理は終了しました。") End Sub |
|
詳しくは、Try...Catch...Finally ステートメント のヘルプを見て下さい。 ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.1041/vblr7/html/vastmTryCatchFinally.htm 又、MSDNのサイトの Visual Basic .NET のエラー処理 で詳しく解説されていますので参考にして下さい。 |