Structured Exception Handling in VB.net
By: Steven Holzner
Visual Basic also supports structured exception handling. In particular, Visual Basic uses an enhanced version of the Try…Catch…Finally syntax already supported by other languages, such as Java. Here's an example that follows our previous example handling a division by zero exception; I start by creating a Try block—you put the exception-prone code in the Try section and the exception-handling code in the Catch section:
Module Module1 Sub Main() Try ⋮ Catch e As Exception ⋮ End Try End Sub End Module
Note the syntax of the Catch statement, which catches an Exception object that I'm naming e. When the code in the Try block causes an exception, I can use the e.ToString method to display a message:
Module Module1 Sub Main() Dim int1 = 0, int2 = 1, int3 As Integer Try int3 = int2 / int1 System.Console.WriteLine("The answer is {0}", int3) Catch e As Exception System.Console.WriteLine(e.ToString) End Try End Sub End Module
Here's what you see when you run this code:
System.OverflowException: Exception of type System.OverflowException was thrown. at Microsoft.VisualBasic.Helpers.IntegerType.FromObject(Object Value) at ConsoleHello.Module1.Main() in C:\vbnet\ConsoleHello\Module1.vb:line 5
Besides using the e.ToString method, you can also use the e.message field, which contains this message:
Exception of type System.OverflowException was thrown.
Archived Comments
Comment on this tutorial
- Data Science
- Android
- AJAX
- ASP.net
- C
- C++
- C#
- Cocoa
- Cloud Computing
- HTML5
- Java
- Javascript
- JSF
- JSP
- J2ME
- Java Beans
- EJB
- JDBC
- Linux
- Mac OS X
- iPhone
- MySQL
- Office 365
- Perl
- PHP
- Python
- Ruby
- VB.net
- Hibernate
- Struts
- SAP
- Trends
- Tech Reviews
- WebServices
- XML
- Certification
- Interview
categories
Related Tutorials
Using Resume Next and Resume Line in VB.net
Using On Error GoTo 0 in VB.net
Getting an Exception's Number and Description in VB.net
Raising an Exception Intentionally in VB.net
Exception Filtering in the Catch Block in VB.net
Using Multiple Catch Statements in VB.net
Throwing an Exception in VB.net
Throwing a Custom Exception in VB.net
Changes in Controls from VB6 to VB.net
Unstructured Exception Handling in VB.net