try-catch-finally (C# リファレンス)

通常、catch および finally は、try ブロックのリソースを取得して使用する場合に、対で記述されます。catch ブロックで例外的な状況を処理し、finally ブロックでリソースを解放します。

例外の再スローの詳細および例については、「try-catch」および「例外のスロー」を参照してください。finally ブロックに関する詳細については、 try-finallyを参照してください。

使用例

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# 言語仕様」を参照してください。言語仕様は、C# の構文と使用法に関する信頼性のある情報源です。

参照

処理手順

方法 : 例外を明示的にスローする

関連項目

C# のキーワード

try、キャッチしてスローします (C++)をステートメント

例外処理ステートメント (C# リファレンス)

throw (C# リファレンス)

using ステートメント (C# リファレンス)

概念

C# プログラミング ガイド

その他の技術情報

C# リファレンス