VBS : lire ligne par ligne un fichier txt

Résolu
tsotb
Messages postés
19
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
22 juillet 2005
- 20 juin 2005 à 10:40
cs_sweetyrahma
Messages postés
6
Date d'inscription
lundi 15 décembre 2008
Statut
Membre
Dernière intervention
7 septembre 2009
- 3 sept. 2009 à 11:58
Salut,
cmt lire ligne par ligne un fichier txt en VBS???
Merci
The Sins Of Thy Beloved
A voir également:

15 réponses

cs_wape
Messages postés
262
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
19 décembre 2010
11
20 juin 2005 à 20:21
Bonjour,

Tu peux utiliser le FileSytemObject :

Set Fso = CreateObject("Scripting.FileSystemObject")
Set Txt = Fso.OpenTextFile("C:\MonFichier.txt", 1)
Do While Not Txt.AtEndOfStream
sLine = Txt.ReadLine
WScript.Echo sLine
Loop
Txt.Close
Set Txt = Nothing
Set Fso = Nothing

wape
1
cs_DARKSIDIOUS
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
20 juin 2005 à 11:07
En VB, il suffit d'utiliser l'instruction Line Input, peut-être qu'en VBS c'est pareil...



Open "fichier" for input as #1



Line Input #1, LaLigne



Close #1

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : http://www.ProgOtoP.com/popapi/
0
tsotb
Messages postés
19
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
22 juillet 2005

20 juin 2005 à 11:38
je sais que le "As" ne passe pas en VBS puisque les variables ne sont pas typées...
0
cs_DARKSIDIOUS
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
20 juin 2005 à 13:16
Attention, ce Ad là n'est pas une déclaration de variable : il s'agit d'un mot clé pour définir le numéro de fichier ouvert !

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_DARKSIDIOUS
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
20 juin 2005 à 13:16
Oups, je voulais dire "As" bien entendu ;)

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
0
tsotb
Messages postés
19
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
22 juillet 2005

20 juin 2005 à 13:39
ben ça bloque au "for".....
0
cs_DARKSIDIOUS
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
20 juin 2005 à 13:40
Ben là je peux pas t'aider par contre, je n'ai jamais fait de vbs !

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
0
tsotb
Messages postés
19
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
22 juillet 2005

20 juin 2005 à 13:46
merci qd meme
0
alex_kirchen
Messages postés
58
Date d'inscription
mardi 28 octobre 2003
Statut
Membre
Dernière intervention
10 février 2006

20 juin 2005 à 20:45
C'est possible de savoir quelle ligne on traîte dans


Open "fichier" for input as #1

Line Input #1, LaLigne

Close #1

(à part utiliser une boucle, bien sûr)
???
Merci!
0
cs_DARKSIDIOUS
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
20 juin 2005 à 20:50
Non, il faut utiliser une boucle et utiliser un index de ligne du style :



While Not EOF(1)



Let Index = Index + 1

...



Wend

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
0
alex_kirchen
Messages postés
58
Date d'inscription
mardi 28 octobre 2003
Statut
Membre
Dernière intervention
10 février 2006

20 juin 2005 à 20:52
Merci beaucoup!
Ca marche!
Mais je ne comprend pas le code.
C'est quoi cet index?
Une simple variable non définie, ou bien l'index du fichier??
0
cs_DARKSIDIOUS
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
20 juin 2005 à 21:05
Non non, c'est une variable que tu peux déclarer !



Le Line Input lit une ligne du fichier. Si tu le rappelle, il te lira la ligne suivante, etc.



Donc si tu fait 15 Line Input, il en sera à la 15ème ligne, c'est à dire, lorsque Index = 15.

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
0
alex_kirchen
Messages postés
58
Date d'inscription
mardi 28 octobre 2003
Statut
Membre
Dernière intervention
10 février 2006

20 juin 2005 à 21:14
Merci beaucoup!
C'est trop cool!
J'ai tout compris!
0
tsotb
Messages postés
19
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
22 juillet 2005

21 juin 2005 à 07:44
merci à tous!mn pb est résolu. maintenant jvais essayer de récupérer que certaines infos de certaines lignes..
0
cs_sweetyrahma
Messages postés
6
Date d'inscription
lundi 15 décembre 2008
Statut
Membre
Dernière intervention
7 septembre 2009

3 sept. 2009 à 11:58
bonjour voila une solution
Const ForReading = 1

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile _
("c:\scripts\servers.txt", ForReading)

Do Until objTextFile.AtEndOfStream
strComputer = objTextFile.ReadLine
Wscript.Echo strComputer
Loop

objTextFile.Close
0