Nixeus
Messages postés192Date d'inscriptionjeudi 18 janvier 2007StatutMembreDernière intervention19 octobre 2020
-
18 juin 2009 à 12:22
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 2013
-
18 juin 2009 à 20:09
Bonjour,
Je souhaite lire un fichier texte, le charger dans un Arraylist afin de pouvor le traiter ( modification, insertion).
J'utilise un ArrayList afin d'avoir un tableau de string dynamique.
J'ai un seul petit soucis, petit, mais très génant.
Le IndexOf ne fonctionne pas !
En gros, je prend chaque ligne avec Readline, je les met une par une dans un élément de mon ArrayList.
Ensuite, je fais un :
m_StreamRead = new StreamReader(@"c:\toto.txt");
while (m_StreamRead.Peek() > 0)
{
strCurrentLigne.Add(m_StreamRead.ReadLine());
}
int nPosition;
String myString = "[meschamps]";
nPosition = strCurrentLigne.IndexOf(myString);
Le soucis est nPosition me renvoie -1 au lieu de la position de l'occurence [meschamps].
J'ai regardé en debug, mon Arraylist est pourtant bien alimenté ligne par ligne.
Nixeus
Messages postés192Date d'inscriptionjeudi 18 janvier 2007StatutMembreDernière intervention19 octobre 2020 18 juin 2009 à 13:52
Haha,
Merci krimog,
Enfait, il y a un espace devant le [champ], je n'y avais pas fais attention et à vrai dire je pensais que IndexOF recherchais une partie et non uniquement l'occurence.
Existe-il une méthode pour rechercher une occurence dans une ligne ? Car j'en aurais besoin par la suite.Merci
krimog
Messages postés1860Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention14 février 201549 18 juin 2009 à 14:36
Il y a même moyen de ne pas faire de boucle pour faire le "Contains()" via une expression Lambda, en utilisant cependant une List<string> à la place de ton ArrayList :
List<string> maListe = new List<string>();
while (m_StreamRead.Peek() > 0)
{
maListe.Add(m_StreamRead.ReadLine());
}