2008-11-10 7 views
8

J'essaie de lire le contenu d'un fichier texte, dans ce cas une liste de noms d'ordinateurs (Computer1, computer2 etc,) et je pensais que StreamReader serait ce que vous voulez utiliser, mais quand je fais ce qui suit:Comment utiliser StreamReader en C# (débutant)

StreamReader arrComputer = new StreamReader(FileDialog.filename)(); 

J'ai eu cette exception:

The type or namespace name 'StreamReader' could not be found (are you missing a using directive or an assembly reference?) 

Je suis très nouveau pour C# Je suis sûr que je fais une erreur de débutant.

Répondre

18

Vous devez importer l'espace de noms System.IO. Mettre cela en haut de votre fichier .cs:

using System.IO; 

Soit que, ou qualifier explicitement le nom du type:

System.IO.StreamReader arrComputer = new System.IO.StreamReader(FileDialog.filename); 
+2

Wow! Qui aide! Je ne peux pas croire que j'ai raté ça. Homme, cet endroit bascule! Merci à tous ceux qui m'ont fait remarquer cela. Parfait! – Jim

4

essayer

using System.IO; 


StreamReader arrComputer = new StreamReader(FileDialog.filename); 
+0

Merci! Cela l'a réparé. J'ai vu votre réponse plus tôt et j'ai complètement manqué l'utilisation de System.IO; namespace ... – Jim

2

Assurez-vous d'inclure using System.IO dans la déclaration de usings

2

Assurez-vous vous avez "using System.IO;" en haut de votre module. De plus, vous n'avez pas besoin de parenthèses supplémentaires à la fin de "new StreamReader (FileDialog.filename)".

3

Assurez-vous que vous avez l'ensemble du système dans votre référence du projet et ajouter cela à la pièce à l'aide:

using System.IO; 
+0

Drôle je n'ai pas reçu le Charger les nouvelles réponses ... – CheGueVerra

2

StreamReader est défini dans System.IO. Vous devez soit ajouter

using System.IO;

au fichier ou changer votre code:

System.IO.StreamReader arrComputer = new System.IO.StreamReader(FileDialog.filename); 
8

Vous aurez besoin:

using System.IO; 

Au sommet du fichier .cs . Si vous lisez du contenu texte, je vous recommande d'utiliser un TextReader qui est bizarrement une classe de base de StreamReader.

essayer:

using(TextReader reader = new StreamReader(/* your args */)) 
{ 
} 

L'utilisation de bloc est tout simplement vous qu'il est éliminé de manière appropriée.

0

Vous devez ajouter une référence à l'assembly System.IO. Vous pouvez le faire via la page de propriétés "Mon projet" sous l'onglet Références.

+0

Mon projet existe uniquement dans les projets Visual Basic.NET. –