次のコードを検討してください。
On Error Goto ErrorHandler
Using sr As StreamReader = New StreamReader(OpenFile)
str = sr.ReadToEnd
sr.Close()
End Using
Exit Sub
ErrorHandler:
ブロック内にエラーがある場合Using
、オブジェクトをどのようにクリーンアップしsr
ますか?
sr
オブジェクトはスコープ内にないErrHandler
ため、sr.Close() を呼び出すことはできません。エラーが発生した場合でも、Using
ブロックはリソースを自動的にクリーンアップしますか?