Envoyé par
caln50
est ce que ya une autre methode bcp plus simple comme par exemple utiliser les tableau ds vb
Je déconseille en règle générale les tableaux, et encore plus pour ton cas à toi qui vise à récupérer une liste d'items depuis un fichier texte.
Un tableau a une taille définie, or toi depuis ton fichier texte ce n'est peut-être pas le cas (ou peut-être pas dans le futur)
Ce serait plus simple à gérer depuis des collections.
(Et même gérer des List(Of LigneFichier))
Envoyé par
callo
rv26t a peut-être voulu écrire:
LstLignes.Add(New LigneFichier(ligne.Split(0), ligne.Split(1), ligne.Split(2)))
Je ne pense pas, Split() renvoit un tableau de chaînes de caractères donc le chiffre est l'index du tableau, mais ce qu'il manque est peut-être le caractère séparateur requis par l'utilisation de Split.
LstLignes.Add(New LigneFichier(ligne.Split(" ")(0), ligne.Split(" ")(1), ligne.Split(" ")(2)))
Sur ce principe, pour la ligne en cours de lecture, on split la ligne à chaque caractère "espace" (" ")
Ce qui donne avec l'exemple de caln50 (abdou 15 19) :
Un tableau qui contient :
Index 0|abdou|
Index 1|15|
Index 2|19|
Et rv26t passe ensuite ces valeurs du tableau dans le constructeur de la classe LigneFichier afin que les properties soient chargés directement. (D'ailleurs les 2 des 3 properties sont en Integer, ne faut-il pas parser le retour du tableau de split à l'index 1 et 2 ?)
Soit :
1 2 3
| If Integer.TryParse(ligne.Split(" ")(1), 0) And Integer.TryParse(ligne.Split(" ")(2), 0) Then
LstLignes.Add(New LigneFichier(ligne.Split(" ")(0), Integer.Parse(ligne.Split(" ")(1)), Integer.Parse(ligne.Split(" ")(2))))
End If |
Partager