Поделиться через


try-catch-finally (Справочник по C#)

Обновлен: Ноябрь 2007

Распространенное использование catch вместе с finally — это получение и использование ресурсов в блоке try, обработка исключительных ситуаций в блоке catch и высвобождение ресурсов в блоке finally.

Дополнительные сведения и примеры по повторному возникновению исключения см. в разделах try-catch и Создание исключений.

Пример

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#

Дополнительные сведения см. в следующих разделах документа Спецификация языка C#:

  • 5.3.3.15 Операторы try-catch-finally

  • 8.10 Оператор try

  • 16 Исключения

См. также

Задачи

Практическое руководство. Явное создание исключения

Основные понятия

Руководство по программированию в C#

Ссылки

Ключевые слова C#

The try, catch, and throw Statements

Операторы обработки исключений (Справочник по C#)

throw (Справочник по C#)

Оператор using (Справочник по C#)

Другие ресурсы

Справочник по C#