J'essaye d'écrire un morceau de code, l'une des choses impliquées est la lecture d'un fichier .txt ligne par ligne. Cependant, je continue d'obtenir l'erreur "Une référence d'objet est requise". Je ne vois pas comment la simple lecture d'un fichier peut causer autant de problèmes, mais c'est le cas. Voici mon code (ignorer en commentaire peu juste avant le départ):Impossible de lire le fichier dans Visual Studio
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Text.RegularExpressions;
//(Program)
namespace FileReader
{
class ReadFromFile
{
public void IsValidLine(string text)
{
Regex rgx = new Regex(@"^([A-Za-z]{1,5})((\s\d){0,9})(\s*)$");
if (rgx.IsMatch(text) == false)
{
Console.WriteLine("Invalid Format");
}
}
static void Main()
{
System.IO.StreamReader file = new
System.IO.StreamReader(@"C:\Users\Public\TestFolder\WriteLines2.txt");
{
int counter = 0;
string line;
List<string> lines = new List<string>();
while ((line = file.ReadLine()) != null)
{
//HERE IS THE ERROR
IsValidLine(line);
lines.Add(line);
counter++;
}
}
}
}
Change 'public void IsValidLine (texte de chaîne)' à 'public static void IsValidLine (texte de chaîne)'. Vous avez besoin d'une instance de la classe 'ReadFromFile' pour utiliser la méthode' IsValidLine' lorsque vous n'avez pas le mot clé 'static'. Il suffit donc d'ajouter le mot-clé statique et vous pouvez comprendre les détails de ce que je viens de dire plus tard. – Quantic
Ok merci, je vais le faire. –