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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 24
    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 confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 843
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 843
    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 confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 843
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 843
    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 confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 843
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 843
    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 averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

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

    MK

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 340
    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.

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