Cette documentation est archivée et n’est pas conservée.

Comment : lever explicitement des exceptions

Vous pouvez lever explicitement une exception à l'aide de l'instruction throw. Vous pouvez aussi lever de nouveau une exception interceptée à l'aide de l'instruction throw. L'ajout d'informations à une exception qui est levée de nouveau pour fournir un complément d'information lors du débogage constitue une bonne pratique de programmation.

L'exemple de code suivant utilise un bloc try/catch pour intercepter une classe FileNotFoundException possible. Le bloc try est suivi d'un bloc catch qui intercepte FileNotFoundException et copie un message vers la console si le fichier de données est introuvable. L'instruction suivante est l'instruction throw qui lève de nouveau FileNotFoundException et ajoute des informations texte à l'exception.

Exemple

using System;
using System.IO;
public class ProcessFile
{
   public static void Main()
      {
      FileStream fs = null;
         try
            //Opens a text tile.
            {
            fs = new FileStream("data.txt", FileMode.Open);
            StreamReader sr = new StreamReader(fs);
            string line;
            //A value is read from the file and output to the console.
            line = sr.ReadLine();
            Console.WriteLine(line);
            }
         catch(FileNotFoundException e)
            {
            Console.WriteLine("[Data File Missing] {0}", e);
            throw new FileNotFoundException("[data.txt not in c:\\dev directory]",e);
            }
         finally
            {
            fs.Close();
            }
      }
}

Voir aussi

Afficher: