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 :

Comment faire pour lire un fichier texte toutes les 2 lignes


Sujet :

VBScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 24
    Points : 19
    Points
    19
    Par défaut Comment faire pour lire un fichier texte toutes les 2 lignes
    Bonjour,
    je souhaiterais lire un fichier txt toutes les deux lignes et les stockés dans un tableau en utilisant un dim tab(x).

    Le problème c'est que je ne sais pas comment faire au niveau de mon readline.

    Le fichier txt se présente comme suit :

    23
    45
    89
    56
    ...

    C'est des nombres et je dois extraire de ce fichier les chiffres qui se trouve toutes les deux lignes.

  2. #2
    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
    Citation Envoyé par benoth08 Voir le message
    Bonjour,
    je souhaiterais lire un fichier txt toutes les deux lignes et les stockés dans un tableau en utilisant un dim tab(x).

    Le problème c'est que je ne sais pas comment faire au niveau de mon readline.

    Le fichier txt se présente comme suit :

    23
    45
    89
    56
    ...

    C'est des nombres et je dois extraire de ce fichier les chiffres qui se trouve toutes les deux lignes.

    Il faut voir la méthode Skipline

  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

    Voici un exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Const ForReading = 1
    On Error Resume Next
       Dim fso, f
       Set fso = CreateObject("Scripting.FileSystemObject")
       Set f = fso.OpenTextFile("c:\test.txt", ForReading)
       while Not f.AtEndOfStream 
       f.SkipLine
       Ligne = f.ReadLine
       MsgBox Ligne
       Wend
       f.close

  4. #4
    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

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Const ForReading = 1
       Dim fso, f
       Set fso = CreateObject("Scripting.FileSystemObject")
       Set f = fso.OpenTextFile("c:\test.txt", ForReading)
       st=f.ReadAll
       Tab = split(st,vbcrlf)
       For i = lbound(Tab) to ubound(Tab) step 2
       MsgBox Tab(i),64,""
       Next

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 24
    Points : 19
    Points
    19
    Par défaut
    Merci je vais tester ceci et regarder le lien que tu m'as donné.

    MK

  6. #6
    Membre confirmé Avatar de pitchalov
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 340
    Points : 582
    Points
    582
    Par défaut
    Bonjour,

    Désolé d'arriver après la bataille.
    Je vous propose une autre solution alternative en passant par un tableau, permettant de choisir si on veut afficher les lignes paires ou impaires :

    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
    Const STR_FILE_PATH = "c:\test.txt"
    Const INT_PAIR = 0
    Const INT_IMPAIR = 1 
    Const FOR_READING = 1
     
    Dim objFso, objFile, arrFileContent, intLineCounter
     
    Set objFso = CreateObject("Scripting.FileSystemObject")
    intLineCounter = 0
    Redim arrFileContent(intLineCounter)
    On Error Resume Next
    Set objFile = objFso.OpenTextFile(STR_FILE_PATH, FOR_READING)
    Do Until objFile.AtEndOfStream
    	Redim Preserve arrFileContent(intLineCounter)
    	arrFileContent(intLineCounter) = objFile.ReadLine
    	intLineCounter = intLineCounter + 1
    Loop
    objFile.Close
    On Error Goto 0
    For intLineCounter = 0 To UBound(arrFileContent)
    	If (intLineCounter + 1) Mod 2 = INT_IMPAIR Then WScript.Echo "Ligne n° " & intLineCounter + 1 & vbCrLf & arrFileContent(intLineCounter)
    Next
    Cette autre solution n'est ni forcément meilleure ni forcément moins bonne, tout dépend de l'utilisation, je l'ai juste posée en complément des codes de hackoofr.

    Bonne continuation.

  7. #7
    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

    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
    Const ForReading = 1
       Dim fso, f
       Set fso = CreateObject("Scripting.FileSystemObject")
       Set f = fso.OpenTextFile("c:\Ordinateurs.txt", ForReading)
       st=f.ReadAll
       Tab = split(st,vbcrlf)
       MsgBox "Lecture des lignes Impaires",64,"Lecture des lignes Impaires"
       'lbound(Tab):reprsente le plus bas indice du tableau càd le 1er indice i=0
       'ubound(Tab):reprsente le plus grand indice du tableau
       For i = lbound(Tab) to ubound(Tab) step 2
       j=i+1
       MsgBox "La ligne N° " & j & " avec l'indice "& i &_
       " dans le Tableau contient la valeur : "&Tab(i),64,"Lecture des lignes Impaires"
       Next
       MsgBox "Lecture des lignes paires",64,"Lecture des lignes paires"
       'ici on commence la boucle d'indice i=1 càd 2ème indice du tableau
       For i = 1 to ubound(Tab) step 2 
       k=i+1
       MsgBox "La ligne N° " & k & " avec l'indice "& i &_
       " dans le Tableau contient la valeur : "&Tab(i),64,"Lecture des lignes paires"
       Next
    Exemple le fichier c:\Ordinateurs :
    Ordinateur1
    Ordinateur2
    Ordinateur3
    Ordinateur4
    Ordinateur5
    Ordinateur6
    Ordinateur7
    Ordinateur8
    Ordinateur9
    Ordinateur10
    Ordinateur11
    Ordinateur12
    Ordinateur13
    Ordinateur14
    Ordinateur15

Discussions similaires

  1. Lire un fichier texte toutes les 3 secondes
    Par sam14 dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 28/03/2012, 16h36
  2. [VB6] Comment faire pour lire un fichier en streaming ?
    Par MegaBigBoss dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 20/04/2006, 17h56
  3. [VB6] Comment faire pour lire un fichier m3u (playlist)
    Par MegaBigBoss dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 08/04/2006, 10h56
  4. [TP]comment faire pour lire un fichier son
    Par sovo dans le forum Turbo Pascal
    Réponses: 1
    Dernier message: 19/09/2004, 19h33

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