Lecture fichier et récupérer la 2eme ligne

[Résolu]
Signaler
Messages postés
78
Date d'inscription
dimanche 27 avril 2003
Statut
Membre
Dernière intervention
10 juillet 2009
-
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
-
Bonjour je voudrai récuipérer un fichier et lire la deuxième de ce fichier pour récupérer son nom mais je n'arrive pa a le lire et a récupere la deuxieme ligne 

Aider moi merci

7 réponses

Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,

Aller juste par esprit de NON optimisation du code, voici un exemple ou: Tu vas récupérer TOUT le fichier, puis casser le contenu pour avoir un tableau (volumineux) et en resortir la deuxieme ligne si elle existe.
Private Function SecondeLigne(ByVal Fichier As String) As String 
Dim NumFile As Integer 
Dim Contenu As String 
Dim Lignes() As String 

        'Récupère le contenu entier du fichier deflist
        Open Fichier For Binary As NumFile 
        Contenu =   String (LOF(NumFile), 0) 
        Get #NumFile, , Contenu 
        Close #NumFile 
        'Casse le contenu en tableau de ligne
        Lignes  = Split(Contenu, vbCrLf) 
        'Si il y a bien une deuxieme ligne on la retourne
        If UBound(Lignes) >= 1 Then SecondeLigne = Lignes(1) 
End Function 

Mais, il est vrai que dans ton poste précedent je t'orientais sur www.codyx.org , j'aimerais savoir si tu y es allé?

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Utilise Open... For Input
et line Input
Nombreux exemples sur ce forum ....!
un compteur o,crémenté de 1 à chaque lignetu quittes quand ton compteur 2>> tu as ta ligne
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Pour la 2ème ligne seulement, d'ailleurs, tu n'as même pas besoin d'un compteur !
Ce ne sera que le 2ème Line Input !

Pas besoin, non plus, de te tancer vers une lecture globale ey d'utiliser un split pour si peu !
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Ouille, Jrivet (Bonjour) !

Tu y vas là à la grosse louche, juste pour la 2ème ligne


C'est le split dont je disais qu'il était là évitable !
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
voyons donc :

Private Sub Command1_Click()
  Open "d:\toto.txt" For Input As #1
  Line Input #1, didi
  Line Input #1, didi
  Close #1
  MsgBox didi
End Sub
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
26
 Bonjour à tous

Un petit bonjour à Julien et Jacques,

MsgBox SkipTextFile



Function SkipTextFile
Const ForReading = 1
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile("d:\Liste_Servers.txt", ForReading)
f.SkipLine
SkipTextFile =   f.ReadLine
f.Close
Set fso = Nothing
Set f = Nothing
End Function



jean-marc
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut, [auteurdetail.aspx?ID= 615490 jmfmarques]
Salut [auteurdetail.aspx?ID=9517 JMO]
> [auteurdetail.aspx?ID =615490 jmfmarques]
J'ai bien vu que tu ne voulais pas de split et c'est pour cela que j'ai marqué Aller juste par esprit de NON optimisation du code
@+: Ju£i?n
Pensez: Réponse acceptée