Compartilhar via


Como: Use o bloco try/catch para interceptar exceções

Coloque as seções do código que podem lançar exceções em um bloco try e coloque código que trata exceções em um bloco catch.O bloco catch é uma série de instruções que começam com a palavra-chave catch, seguido por um tipo de exceção e uma ação a ser tomada.

Observação:

Praticamente qualquer linha de código pode causar uma exceção, especialmente sistema autônomo exceções que são lançada pelo common linguagem tempo de execução, sistema autônomo OutOfMemoryException e StackOverflowException.A maioria dos aplicativos não tem que lidar com essas exceções, mas você deve estar ciente dessa possibilidade ao escrever bibliotecas para ser usadas por outras pessoas.Para obter sugestões sobre quando definir código em um bloco try, consulte Práticas recomendadas para tratamento de exceções.

O exemplo de código a seguir usa um bloco try/catch para capturar uma possível exceção.O método Main contém um bloco try com uma instrução StreamReader que abre um arquivo de dados chamado data.txt e grava uma sequência de caracteres a partir do arquivo.Após o bloco Try está um bloco catch que captura qualquer exceção que resulta do bloco try.

Exemplo

Option Explicit
Option Strict
Imports System
Imports System.IO
Imports System.Security.Permissions
<assembly: FileIOPermissionAttribute(SecurityAction.RequestMinimum, All := "c:\data.txt")>

Public Class ProcessFile
   Public Shared Sub Main()
      Try
         Dim sr As StreamReader = File.OpenText("data.txt")
         Console.WriteLine("The first line of this file is {0}", sr.ReadLine())
      Catch e As Exception
         Console.WriteLine("An error occurred: '{0}'", e)
      End Try
   End Sub
End Class
using System;
using System.IO;
using System.Security.Permissions;
// Security permission request.
[assembly:FileIOPermissionAttribute(SecurityAction.RequestMinimum, All = @"c:\data.txt")]
public class ProcessFile {
    public static void Main() {
        try {
            StreamReader sr = File.OpenText("data.txt");
            Console.WriteLine("The first line of this file is {0}", sr.ReadLine());    
        }
        catch(Exception e) {
            Console.WriteLine("An error occurred: '{0}'", e);
        }
    }
}

Este exemplo ilustra uma instrução catch básica que irá detectar qualquer exceção.Em geral, é uma boa prática de programação capturar um tipo específico de exceção em vez de usas a instrução básica catch .Para obter mais informações sobre captura de exceções específicas, consulte Usando exceções específicas em um bloco catch.

Consulte também

Tarefas

Como: Usar exceções específicas em um bloco Catch

Como: Lançar exceções explicitamente

Como: Criar exceções definida pelo usuário

Como: Uso Finally bloqueia

Outros recursos

Fundamentos da Manipulação de Exceções