VBS : lire ligne par ligne un fichier txt [Résolu]

Signaler
Messages postés
19
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
22 juillet 2005
-
Messages postés
6
Date d'inscription
lundi 15 décembre 2008
Statut
Membre
Dernière intervention
7 septembre 2009
-
Salut,
cmt lire ligne par ligne un fichier txt en VBS???
Merci
The Sins Of Thy Beloved
A voir également:

15 réponses

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
104
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/
Messages postés
19
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
22 juillet 2005

je sais que le "As" ne passe pas en VBS puisque les variables ne sont pas typées...
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
104
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/
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
104
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/
Messages postés
19
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
22 juillet 2005

ben ça bloque au "for".....
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
104
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/
Messages postés
19
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
22 juillet 2005

merci qd meme
Messages postés
262
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
19 décembre 2010
6
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
Messages postés
58
Date d'inscription
mardi 28 octobre 2003
Statut
Membre
Dernière intervention
10 février 2006

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!
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
104
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/
Messages postés
58
Date d'inscription
mardi 28 octobre 2003
Statut
Membre
Dernière intervention
10 février 2006

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??
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
104
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/
Messages postés
58
Date d'inscription
mardi 28 octobre 2003
Statut
Membre
Dernière intervention
10 février 2006

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

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

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