IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Lecture les fichier Text


Sujet :

VBScript

  1. #1
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Novembre 2012
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 54
    Points : 76
    Points
    76
    Par défaut Lecture les fichier Text
    Bonjour,

    Je voudrais récupérer la 8eme ligne dans un fichier ListeUser.txt.

    Mais impossible à d’afficher la 8eme ligne à partir du code ci-dessous !


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    	Function Lecture()
    				dim ScriptFileName,objFSO,FileOut,i,mot,Temp 
                                    Temp = "C:\test"
    				ScriptFileName = Temp & "\ListeUser.txt"
    				Set objFSO = CreateObject("Scripting.FileSystemObject")
    				Set InputFile = objFSO.OpenTextFile(ScriptFileName)
    				i = 1
    				Do Until InputFile.atEndOfStream
                                       i = i + 1
                                       if i = 8 Then
    					mot = InputFile.Readline
                                       end if 
    				loop
                                    Lecture = mot 
    				InputFile.close
    				if objFSO.FileExists(ScriptFileName) Then objFSO.DeleteFile(ScriptFileName)
    	End Function
            Msgbox Lecture()
    Pouvez vous corriger mon problème svp !!!

    Je vous remercie d'avance !!

  2. #2
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 167
    Points
    17 167
    Par défaut
    Salut

    Il me semble d’ailleurs que tu te trouves dans une boucle infini.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
                    i = 1
                    Do Until InputFile.atEndOfStream
                        i = i + 1
                        If i = 8 Then
                            mot = InputFile.Readline
                        End If
                    Loop
    En fait tu ne lis que la première ligne.
    ReadLine, méthode
    Lit une ligne entière (jusqu'au caractère de nouvelle ligne mais non compris celui-ci)
    Ta variable i à pour valeur 1 avant de rentrer dans la boucle, avant de lire la première ligne tu lui donnes la valeur 2, tu boucles 7 fois se qui incrémente sa valeur à 8, la condition If est donc True , là pour la première fois tu lis la première ligne du fichier Readline, mot contient donc la valeur de la première ligne, tu sors de la condition If ....... End If, et tu continus à boucler en incrémentant i.
    Puisque il n'y a pas d'autre condition de sortie de la boucle, tu restes bloqué à l’intérieur.
    Ton code pourrait ressembler à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
        Function Lecture()
                    Dim ScriptFileName, InputFile, objFSO, i, mot, Temp
                    Temp = "C:\test"
    		ScriptFileName = Temp & "\ListeUser.txt"
    		Set objFSO = CreateObject("Scripting.FileSystemObject")
                    If objFSO.FileExists(ScriptFileName) Then
    					ScriptFileName = Temp & "\ListeUser.txt"
    					Set InputFile = objFSO.OpenTextFile(ScriptFileName)
    					i = 1
    					Do Until InputFile.atEndOfStream
    						mot = InputFile.Readline
    						If i = 8 Then Exit Do
    						i = i + 1
    					Loop
    					Lecture = mot
    					InputFile.Close
    					Set InputFile = Nothing
    					objFSO.DeleteFile (ScriptFileName)
    					Else
    					Lecture = "Fichier introuvable"
    				End If
    				Set objFSO = Nothing
        End Function
    Il y a plus simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Function LectureUneLigne(CheminNomFichier, QuelNumero)
        Const ForReading = 1
        Dim objFSO, InputFile
        Set objFSO = CreateObject("Scripting.FileSystemObject")
        If objFSO.FileExists(CheminNomFichier) Then
            'Ouverture et lecture du fichier
            Set InputFile = objFSO.OpenTextFile(CheminNomFichier, ForReading)
            'recuperation de la ligne voulue
            LectureUneLigne = Split(InputFile.ReadAll, vbNewLine)(QuelNumero - 1)
            InputFile.Close
            Set InputFile = Nothing
            Else
            LectureUneLigne = "Fichier introuvable"
        End If
        Set objFSO = Nothing
    End Function
     
    MsgBox LectureUneLigne("C:\test\ListeUser.txt", 8)
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut

    Quelque chose comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Const ForReading = 1
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objTextFile = objFSO.OpenTextFile("mylogfile.log", ForReading)
     
    For i = 1 to 7
        objTextFile.ReadLine
    Next
     
    strLine = objTextFile.ReadLine
    Wscript.Echo strLine
    objTextFile.Close

  4. #4
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Novembre 2012
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 54
    Points : 76
    Points
    76
    Par défaut
    Ahhhh Merci bien !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lecture d´un fichier texte .
    Par pilouface dans le forum C
    Réponses: 5
    Dernier message: 20/01/2006, 23h48
  2. Delphi et les fichiers texte
    Par the watcher dans le forum Langage
    Réponses: 5
    Dernier message: 28/10/2005, 15h31
  3. Suppression de tous les fichiers textes d'un répertoire
    Par Cathy dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 20/09/2005, 17h11
  4. [AS2] Lecture Ecriture Fichier Texte
    Par cpr0 dans le forum ActionScript 1 & ActionScript 2
    Réponses: 4
    Dernier message: 13/09/2005, 11h22
  5. lecture de fichier texte
    Par prorider dans le forum C
    Réponses: 36
    Dernier message: 08/09/2004, 20h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo