try-catch-finally (C#-Referenz)try-catch-finally (C# Reference)

Häufige Verwendungen von catch und finally sind das Abrufen und Verwenden von Ressourcen in einem try-Block, das Vorgehen bei außergewöhnlichen Umständen in einem catch-Block und das Freisetzen von Ressourcen im finally-Block.A common usage of catch and finally together is to obtain and use resources in a try block, deal with exceptional circumstances in a catch block, and release the resources in the finally block.

Weitere Informationen und Beispiele zum erneuten Auslösen von Ausnahmen finden Sie unter try-catch und Auslösen von Ausnahmen.For more information and examples on re-throwing exceptions, see try-catch and Throwing Exceptions. Weitere Information über den finally-Block finden unter try-finally.For more information about the finally block, see try-finally.

BeispielExample

public class EHClass
{
    void ReadFile(int index)
    {
        // To run this code, substitute a valid path from your local machine
        string path = @"c:\users\public\test.txt";
        System.IO.StreamReader file = new System.IO.StreamReader(path);
        char[] buffer = new char[10];
        try
        {
            file.ReadBlock(buffer, index, buffer.Length);
        }
        catch (System.IO.IOException e)
        {
            Console.WriteLine("Error reading from {0}. Message = {1}", path, e.Message);
        }
        
        finally
        {
            if (file != null)
            {
                file.Close();
            }
        }
        // Do something with buffer...
    }

}

C#-ProgrammiersprachenspezifikationC# Language Specification

Weitere Informationen erhalten Sie unter C#-Sprachspezifikation.For more information, see the C# Language Specification. Die Sprachspezifikation ist die verbindliche Quelle für die Syntax und Verwendung von C#.The language specification is the definitive source for C# syntax and usage.

Siehe auchSee Also

C#-ReferenzC# Reference
C#-ProgrammierhandbuchC# Programming Guide
C#-SchlüsselwörterC# Keywords
try-, throw- und catch-Anweisungen (C++)try, throw, and catch Statements (C++)
AusnahmebehandlungsanweisungenException Handling Statements
throwthrow
Vorgehensweise: Explizites Auslösen von AusnahmenHow to: Explicitly Throw Exceptions
Using-Anweisungusing Statement