StreamReader sr = new StreamReader("MonFichier.log"); List<string> listeErreurs = new List<string>(); string ligne; int lineNumber = 0; while((ligne = sr.ReadLine) != null) { lineNumber++; if(ligne.StartsWith("error")) { listeErreurs.Add(string.Format("{0}\t{1}",lineNumber, ligne)); } } sr.Close();
maRichTextBox.Text = string.Join('\n', listErreur.ToArray());
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionStreamReader sr2 = new StreamReader("G:\\Stage\\logs_vm\\Logs\" + va); List<string> listeLigne = new List<string>(); string ligne; string var1 = textBox1.Text; string var2 = textBox2.Text; int var1_1 = Int32.Parse(var1); int var1_2 = Int32.Parse(var2); int lineNumber = 0; while ((ligne = sr2.ReadLine()) != null) { lineNumber++; if (lineNumber == var1_1) { for (lineNumber = var1_1; lineNumber < var1_2; lineNumber++) { listeLigne.Add(string.Format("{0}\t{1}", lineNumber, ligne)); } foreach (string erreur in listeLigne) // on lit chaque valeur de listeErreurs et on l'enregistre dans une variable nommée erreur { richTextBox1.Text = richTextBox1.Text + erreur + "\n"; // \n est le caractère de retour à la ligne } }
StreamReader sr2 = new StreamReader("G:\\Stage\\logs_vm\\Logs\" + va); // On crée le lecteur List<string> listeLigne = new List<string>(); // On crée une liste string ligne; // On crée une variable qui contiendra le texte de la ligne string var1 = textBox1.Text; string var2 = textBox2.Text; int var1_1 = Int32.Parse(var1); // on récupère sous forme d'entier le texte entré dans textBox1 int var1_2 = Int32.Parse(var2); int lineNumber = 0; // On crée une variable contenant le numéro de la ligne en cours while ((ligne = sr2.ReadLine()) != null) /* * On commence une boucle. On lit une ligne. On enregistre cette ligne * dans la variable ligne. On déplace le curseur à la ligne suivante. * On va recommencer la boucle tant qu'une nouvelle ligne existe. */ { lineNumber++; // On augmente le numéro de ligne pour avoir la ligne actuelle if (lineNumber == var1_1) // Si on est sur la première ligne que l'on souhaite enregistrer { for (lineNumber = var1_1; lineNumber < var1_2; lineNumber++) { listeLigne.Add(string.Format("{0}\t{1}", lineNumber, ligne)); /* * On ajoute var1_2 - var1_1 fois le numéro de la ligne * (qui augmente à chaque fois), suivi d'une tabulation, * et de la valeur de la variable ligne (qui ne change * qu'à chaque itération de la boucle while). * * De plus, dès la deuxième itération de la boucle, * lineNumber ne correspond plus au texte de ligne. */ } foreach (string erreur in listeLigne) { richTextBox1.Text = richTextBox1.Text + erreur + "\n"; // On écrit chaque erreur dans la richTextBox1 } } }
while ((ligne = sr2.ReadLine()) != null) { lineNumber++; if (lineNumber >= var1_1) { if (lineNumber <= var1_2) { listeLigne.Add(string.Format("{0}\t{1}", lineNumber, ligne)); } } } foreach (string erreur in listeLigne) // on lit chaque valeur de listeErreurs et on l'enregistre dans une variable nommée erreur { richTextBox1.Text = richTextBox1.Text + erreur + "\n"; // \n est le caractère de retour à la ligne } sr2.Close();
// On passe les premières lignes int lineNumber; for (lineNumber = 1; lineNumber < var1_1; lineNumber++) { sr2.ReadLine(); } // Avec les ReadLine() que l'on a fait, on sait qu'il faut lire à partir de la prochaine ligne for (lineNumber = var1_1; lineNumber <= var1_2; lineNumber++) { string ligne = sr2.ReadLine(); listeLigne.Add(string.Format("{0}\t{1}", lineNumber, ligne); } foreach (string erreur in listeLigne) { richTextBox1.Text = richTextBox1.Text + erreur + "\n"; } sr2.Close(); // !!!!!! ATTENTION !!!!!! // Avec cette méthode, je ne vérifie pas s'il y a encore des lignes // dans le fichier (contrairement à la tienne). S'il y a moins de lignes // que prévu, ma méthode va générer une exception.
// On passe les premières lignes int lineNumber; string ligne; for (lineNumber 1; lineNumber < var1_1 && (ligne sr2.ReadLine()) != null; lineNumber++) { } // Avec les ReadLine() que l'on a fait, on sait qu'il faut lire à partir de la prochaine ligne for (lineNumber = var1_1; lineNumber <= var1_2 && ligne != null && (ligne = sr2.ReadLine()) != null; lineNumber++) { listeLigne.Add(string.Format("{0}\t{1}", lineNumber, ligne); } foreach (string erreur in listeLigne) { richTextBox1.Text = richTextBox1.Text + erreur + "\n"; } sr2.Close();
private void EnableMenu(Label a) { Hashtable Tab = new Hashtable(); Tab.Add("1", menu1); Tab.Add("2", menu2); Tab.Add("3", menu3); Tab.Add("4", menu4); Tab.Add("5", menu5); Tab.Add("6", menu6); Tab.Add("7", menu7); Tab.Add("8", menu8); Tab.Add("9", menu9); Tab.Add("10", menu10); Tab.Add("11", menu11); Tab.Add("12", menu12); Tab.Add("13", menu13); Tab.Add("14", menu14);
foreach (DictionaryEntry DE in Tab) { if a.Text == "-" { // Tous les autres menu.Text ="+" } }
if (a.Text == "-") { foreach (Label l in Tab) { if (a != l) { l.Text = "+"; } } }
Label[] Tab = new Label[14]; Tab[0] = menu1; Tab[1] = menu2; Tab[2] = menu3; //... Tab[13] = menu14;
List<Label> Tab = new List<Label>(); Tab.Add(menu1); Tab.Add(menu2); Tab.Add(menu3); //... Tab.Add(menu14);
Tab[i]pour arriver au menu i+1 (car les indices commencent à 0 en C#).