Lire un fichier texte ligne pas ligne ?

Résolu
ult1m4tum Messages postés 17 Date d'inscription lundi 23 mai 2011 Statut Membre Dernière intervention 1 février 2012 - 1 févr. 2012 à 09:49
ult1m4tum Messages postés 17 Date d'inscription lundi 23 mai 2011 Statut Membre Dernière intervention 1 février 2012 - 1 févr. 2012 à 11:40
Bonjour a tous !

Voici mon probleme :

J'ai créé un petit soft qui est censé aller chercher les lignes d'un fichier texte et les afficher unes par unes dans des textbox ...

Mon ennui est le suivant, je devrais normalement utiliser un streamreader, mais mon chemin de fichier est de la forme :

Dim emplacement As String = "C:" & ComboBox_charger.Text & ".txt" 


je ne peux de ce fait plus utiliser de reader vu que mon chemin contient un objet ... existe-il d'autres méthodes pour ressortir les lignes d'un fichier texte ?

J'ai essayé avec ces quelques lignes :
        If System.IO.File.Exists("C:" & ComboBox_charger.SelectedItem & ".txt") Then
            MessageBox.Show("fichier trouvé")
            FileOpen(1, emplacement, OpenMode.Input) 'on ouvre le fichier à analyser
            txt_ndc_1.Text = LineInput(1)'on lis la ligne et on la remet ds la textbox
            FileClose(1)
        Else
            MessageBox.Show("Fichier introuvable vérifiez le nom du fichier")
        End If

mais il m'affiche TOUT le fichier dans la txt_ndc_1 avez vous une solution ?

5 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
1 févr. 2012 à 10:11
Pourquoi ne pas apsser par ReadAllLines ?

ca permet de lire tout un fichier, en un coup et de placer chaque ligne dans un tableau de chaines...


Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
3
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
1 févr. 2012 à 11:28
Bonjour

Dim emplacement As String = "C:" & ComboBox_charger.Text & ".txt" 


je ne peux de ce fait plus utiliser de reader vu que mon chemin contient un objet


quel objet?
readalllines et list of string
Private malist As New List(Of String)
Private Sub ReadFile(ByVal pathfichier As String)
   'je lis tout le fichier dans malist
  Try
       malist = System.IO.File.ReadAllLines(pathfichier).ToList
  Catch ex As Exception
     'en cas d'exception affiche l'erreur 
      MessageBox.Show(ex.Message)
    Close()
  End Try
End Sub


ou avec un array

 Private listitems() As String
 Private Sub ReadFile(ByVal pathfichier As String)
    'je lis tout le fichier dans malist
  Try
     listitems = System.IO.File.ReadAllLines(pathfichier)
  Catch ex As Exception
    'en cas d'exception affiche l'erreur 
   MessageBox.Show(ex.Message)
    Close()
  End Try
End Sub
3
ult1m4tum Messages postés 17 Date d'inscription lundi 23 mai 2011 Statut Membre Dernière intervention 1 février 2012
1 févr. 2012 à 10:42
M'ouarf, le mot tableau m'a toujours fais peur, tu pourrais me détailler le code ? je n'ai jamais utilisé de tableau en vb.net (honte à moi).
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
1 févr. 2012 à 10:53
Qu'est-ce que tu cherches a faire, exactement...

ton premier message fait mal aux yeux...

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ult1m4tum Messages postés 17 Date d'inscription lundi 23 mai 2011 Statut Membre Dernière intervention 1 février 2012
1 févr. 2012 à 11:40
Hé beh voilà, super merci beaucoup l'ami ! c'est nickel.
0
Rejoignez-nous