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 :

probleme pour recuperer des champs d'un fichier txt en vbs


Sujet :

VBScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2005
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 172
    Points : 73
    Points
    73
    Par défaut probleme pour recuperer des champs d'un fichier txt en vbs
    Bonjour

    Je souhaiterais récuperer des champs dans un fichier txt via vbs.
    Mon probleme réside sur la récuperation d'un champs dans un fichier txt.

    Cas 1:
    Le fichier ConfigCfg.txt est structuré de la manière suivante :
    nameserver;
    namebdd;
    nameinstance;

    Je souhaiterai récupérer une information précise par ex: nameBdd
    voici ce que j'ai fait
    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
    24
    25
    26
    27
    28
     
     
    on error resume next
    'Declaration de variables
    Dim fso,strSourceFile,val,nb,prec,test,tab
    Dim server,i,entier
    strSourceFile="C:\chemin\ConfigCfg.txt"
    Const ForReading = 1, ForWriting = 2 , ForAppending = 8
     
    set fso = createobject("Scripting.FileSystemObject")
    If Not fso.FileExists(strSourceFile) Then
        wscript.echo "le fichier n'existe pas " 
    Else
    	wscript.echo "server :" & getVariable(1) 'retourne rien
    End if 
     
    Function getVariable(entier)
    Set f = fso.OpenTextFile(strSourceFile, ForReading)
    Do While not f.AtEndOfStream
       val = f.readline
       l = len(val)
       tabFile =left(val, l-1)
       getVariable = tabFile (entier)   
     
    Loop 
     
    set f = nothing 
    End function
    Cas 2 :
    Pour le moment j'arrive à récupere l'infos si le fichier est structuré de la manière suivante.
    Voici le texte :
    nameserver;namebdd;nameinstance;


    Voici le code réalisé
    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
    24
    25
    26
    27
     
    'Wscript
    on error resume next
    'Declaration de variables
    Dim fso,strSourceFile,val,nb,prec,test
    Dim server,i,entier
    strSourceFile="c:\chemin\Config.txt"
    Const ForReading = 1, ForWriting = 2 , ForAppending = 8
     
    set fso = createobject("Scripting.FileSystemObject")
    If Not fso.FileExists(strSourceFile) Then
        wscript.echo "le fichier n'existe pas " 
    Else
    wscript.echo "server :" & getVariable(0) ' retourne la valeur nameserver
    wscript.echo "Bdd    :" & getVariable(1)' retourne la valeur namebdd
    wscript.echo "path   :" & getVariable(2)' retourne la valeur nameinstance
     
    End if 
     
    Function getVariable(entier)
     Set f = fso.OpenTextFile(strSourceFile, ForReading)
       	val=f.ReadLine	
    	tabFile     = Split(val, ";")
    	getVariable = tabFile(entier)	
     set f = nothing 
     
    End function
    Pourriez vous m'aidez ? Je ne vois pas comment je peux récuperer l'information lorsque le fichier structuré de la manière Cas 1:

    Merci d'avance

  2. #2
    Membre actif
    Inscrit en
    Mai 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 189
    Points : 212
    Points
    212
    Par défaut
    faut lire plusieurs lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    val = f.readline
    val2 = f.readline 'Val2 sera remplie avec la valeur en 2eme ligne

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2005
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 172
    Points : 73
    Points
    73
    Par défaut
    je souhaiterais lire la donnée en fonction du paramètre attendu.

    Par ex : si je fais getVariable(1)
    je devrais pouvoir lire uniquement la donnée nameBdd
    or avec ce que je fais je lis tout le fichier

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 31/03/2011, 18h16
  2. Réponses: 12
    Dernier message: 31/10/2008, 20h45
  3. Réponses: 8
    Dernier message: 08/03/2007, 16h54
  4. Problème awk pour récuperer des champs
    Par ab_2006 dans le forum Shell et commandes GNU
    Réponses: 15
    Dernier message: 21/09/2006, 09h36
  5. Réponses: 8
    Dernier message: 13/07/2006, 01h17

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