Bonjour,

Etant nouveau en programmation c#, j'aimerai pouvoir ouvrir un fichier et copier ce que je lis dans un fichier texte à part. J'aimerais être sûr que je suis bien arrivé à la fin du fichier. Pour éviter d'avoir à regarder si la ligne qui est lue est null ou vide. J'ai vu qu'il existait la propriété EndOfStream{get;} dans la classe System.IO.StreamReader.

Voici le code utilisé :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
using System.IO;
using System;
 
[...]
------
main()
------
 
string ligne = null;
StreamReader fluxInfos = null;
StreamWriter fluxInfos2 = null;
// lecture contenu du fichier image.png
try 
{
	// lecture 1
	Console.WriteLine("Lecture 1----------------");
	using (fluxInfos = new StreamReader("image.png")) 				 
	{
	using (fluxInfos2 = new StreamWriter("image.txt"))
		{					
		        ligne = fluxInfos.ReadLine();
			while (!fluxInfos.EndOfStream) 
			{
				// écriture ligne dans fichier texte
				fluxInfos2.WriteLine(ligne);
				Console.WriteLine(ligne);
				ligne = fluxInfos.ReadLine();
			}
		}
	}
}
 
[...]
Seulement, le compilateur me dit que 'System.IO.StreamReader' ne contient pas de définition pour 'EndOfStream'. Alors qu'il me semble bien que si !

Après j'utilise Microsoft Visual Studio .NET 2003. Peut être que le problème vient de là?

Merci d'avance.