Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. |
Traduction
Source
|
StreamReader.ReadLine, méthode
Lit une ligne de caractères à partir du flux en cours et retourne les données sous forme de chaîne.
Assembly : mscorlib (dans mscorlib.dll)
| Exception | Condition |
|---|---|
| OutOfMemoryException |
La mémoire disponible est insuffisante pour allouer une mémoire tampon pour la chaîne retournée. |
| IOException |
Une erreur d'E/S s'est produite. |
Une ligne est définie comme une séquence de caractères suivie d'un saut de ligne ("\n"), d'un retour chariot ("\r"), ou d'un retour chariot immédiatement suivi d'un saut de ligne ("\r\n"). La chaîne retournée ne comprend pas le retour chariot ou le saut de ligne de fin. La valeur retournée est null si la fin du flux d'entrée est atteinte.
Cette méthode substitue ReadLine.
Si la méthode actuelle lève OutOfMemoryException, la position du lecteur dans l'objet Stream sous-jacent est avancée du nombre de caractères que la méthode a pu lire, mais les caractères déjà lus dans la mémoire tampon interne de ReadLine sont ignorés. Si vous manipulez la position du flux sous-jacent après avoir lu les données dans la mémoire tampon, la position du flux sous-jacent peut ne pas correspondre à la position de la mémoire tampon interne. Pour réinitialiser la mémoire tampon interne, appelez la méthode DiscardBufferedData ; toutefois, cette méthode ralentit les performances et doit être appelée uniquement en cas d'absolue nécessité.
Pour obtenir la liste des tâches d'E/S courantes, consultez Tâches d'E/S courantes.
L'exemple de code suivant lit les lignes d'un fichier jusqu'à ce que la fin du fichier soit atteinte.
using System; using System.IO; class Test { public static void Main() { string path = @"c:\temp\MyTest.txt"; try { if (File.Exists(path)) { File.Delete(path); } using (StreamWriter sw = new StreamWriter(path)) { sw.WriteLine("This"); sw.WriteLine("is some text"); sw.WriteLine("to test"); sw.WriteLine("Reading"); } using (StreamReader sr = new StreamReader(path)) { while (sr.Peek() >= 0) { Console.WriteLine(sr.ReadLine()); } } } catch (Exception e) { Console.WriteLine("The process failed: {0}", e.ToString()); } } }
Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2
Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.