Cómo: Utilizar el bloque Try/Catch para detectar excepciones
Importante Es posible que este documento no represente los procedimientos recomendados para el desarrollo actual. Puede que los vínculos a las descargas y otros recursos ya no sean válidos. Encontrará aquí la versión que se recomienda en la actualidad. ArchiveDisclaimer

Cómo: Utilizar el bloque Try/Catch para detectar excepciones

Coloque las secciones del código que pueden producir excepciones en un bloque Try y el código que controla excepciones en un bloque Catch. El bloque Catch es una serie de instrucciones que comienzan con la palabra clave catch seguida por un tipo de excepción y la acción que se debe tomar.

NoteNota

Prácticamente cualquier línea de código puede originar una excepción, especialmente las excepciones que produce el propio Common Language Runtime, como OutOfMemoryException y StackOverflowException. La mayoría de las aplicaciones no tienen que encargarse de estas excepciones, pero se debe ser consciente de esta posibilidad al escribir bibliotecas que van a utilizar otros usuarios. Para obtener sugerencias de cuándo establecer el código en un bloque Try, vea Procedimientos recomendados para controlar excepciones.

En el ejemplo de código siguiente se usa un bloque try/catch para detectar una posible excepción. El método Main contiene un bloque Try con una instrucción StreamReader que abre un archivo de datos denominado data.txt y escribe una cadena del archivo. Después del bloque Try hay un bloque Catch que detecta cualquier excepción que resulte del bloque Try.

Ejemplo

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 ejemplo ilustra una instrucción Catch básica que detectará cualquier excepción. Por lo general, se recomienda, cuando se esté programando, detectar un tipo de excepción específico en lugar de utilizar la instrucción Catch básica. Para obtener información sobre la detección de excepciones específicas, vea Utilizar excepciones específicas en un bloque Catch.

Vea también

Mostrar:
© 2016 Microsoft