Bonjour,
Je n'arrive pas à écrire un script qui me permettrait de recuperer une chaine de caractère (dans une variable) a un endroit precis d'un fichier txt (entre la 3 ème ligne et le 12 ème caractère)
Merci d'avance
dohko
Version imprimable
Bonjour,
Je n'arrive pas à écrire un script qui me permettrait de recuperer une chaine de caractère (dans une variable) a un endroit precis d'un fichier txt (entre la 3 ème ligne et le 12 ème caractère)
Merci d'avance
dohko
Comment lire le contenu d'un fichier texte
Comment extraire une partie d'une chaîne
Si problème de mise en œuvre, mes nous le code de tes essais.
Bonsoir,
Voila pour récupérer la ligne qui m'intéresse dans le fichier et la mettre dans une variable, je ne sais pas faire :
Le code que je vous ai mis me permet de voir l'intégralité du fichier dans une fenêtre dos.Code:
1
2
3
4
5
6
7
8
9 Const ForReading = 2, ForWriting = 2 Dim oFso, f Set oFso = CreateObject("Scripting.FileSystemObject") Set f = oFso.OpenTextFile("C:\toto.txt", ForReading) While Not f.AtEndOfStream WScript.echo f.ReadLine Wend f.Close
Par contre si j'omets cette première partie j'ai par contre réussi la seconde a savoir le découpage de cette fameuse ligne qui m'intéresse.
voici le code suivant
Voila si quelqu'un pourrai m'aider a récupérer ce que j'ai mis en dur pour le moment dans la variable st et qui correspond à la 13 ème ligne de ce fameux fichier.Code:
1
2
3
4
5
6
7
8
9
10
11 'Dim code, login, st st="Insert("+"codeg[UOP]"+")" login = "dudul" code = Mid (st,8,5) MsgBox code If code <> login Then MsgBox "dommage" Else MsgBox "ok" End If
Cordialement,
dohko:(
Citation:
recuperer une chaine de caractère (dans une variable) a un endroit precis d'un fichier txt (entre la 3 ème ligne et le 12 ème caractère)
Une des façons de faire ;), ils y en a d'autres.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Const ForReading = 2, ForWriting = 2 Dim oFso, f, Nbr, LigRecup Set oFso = CreateObject("Scripting.FileSystemObject") Set f = oFso.OpenTextFile("C:\toto.txt", ForReading) 'While Not f.AtEndOfStream Do Nbr = Nbr + 1 'WScript.echo f.ReadLine LigRecup = f.Readline If Nbr = 3 Then Exit Do 'Wend Loop Until f.AtEndOfStream f.Close If Nbr = 3 Then MsgBox Left(LigRecup,12) 'récupère les 12 premiers caractères End If
Bonsoir,
Avec ton script j'ai ce message
Erreur sur la ligne (10, 4) Erreur d'exécution Microsoft VBScript: Mode fichier incorrect
De plus mon fichier se vide completement?
dohko
Citation:
Envoyé par Technologies de Microsoft Windows Script
:oops: je n'avais pas fait attention, déclaration erronée, je n'avais pas l'aide en ligne sous le bras :aie: Le code à été vérifié, :ccool:Code:Const ForReading = 2, ForWriting = 2
Où trouver l'aide en ligne pour VBScript ?