Vbscript et la modification des fichiers .txt
pyb54
-
pyb54 -
pyb54 -
Bonjour,
J'ai un soucis dans mon code et j'aimerais être éclairé si possible ;)
ce code ouvre un fichier .txt et modifie chaque ligne grâce à la commande mid, le problème est que soit j'ouvre le fichier en mode écriture et que, il ne veut pas lire le .AtEndofStream car le fichier est pas en lecture soit je l'ouvre en lecture et il ne veut pas éxécuter le mid.
voici le code
dim f, oFso
Set oFso = CreateObject("Scripting.FileSystemObject")
Set f = oFso.OpenTextFile("C:\fin.txt", For writing)
Do while Not f.AtEndOfStream
f = f.readline
f = Mid(f,36,64)
loop
Set oFso = Nothing
J'ai un soucis dans mon code et j'aimerais être éclairé si possible ;)
ce code ouvre un fichier .txt et modifie chaque ligne grâce à la commande mid, le problème est que soit j'ouvre le fichier en mode écriture et que, il ne veut pas lire le .AtEndofStream car le fichier est pas en lecture soit je l'ouvre en lecture et il ne veut pas éxécuter le mid.
voici le code
dim f, oFso
Set oFso = CreateObject("Scripting.FileSystemObject")
Set f = oFso.OpenTextFile("C:\fin.txt", For writing)
Do while Not f.AtEndOfStream
f = f.readline
f = Mid(f,36,64)
loop
Set oFso = Nothing
A voir également:
- Vbscript et la modification des fichiers .txt
- Suivi des modifications word - Guide
- Comment réduire la taille d'un fichier - Guide
- Renommer des fichiers en masse - Guide
- Logiciel gratuit modification pdf - Guide
- Fichiers epub - Guide
2 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
Ne devrais-tu pas plutôt utiliser une autre variable pour lire du texte ?
Par exemple :
Option Explicit
Sub testfil()
Dim f As Scripting.TextStream
Dim f2 As Scripting.TextStream
Dim oFso As Scripting.FileSystemObject
Dim s As String
Set oFso = CreateObject("Scripting.FileSystemObject")
Set f = oFso.OpenTextFile("C:\temp\fin.txt", ForReading)
Set f2 = oFso.CreateTextFile("C:\temp\fin2.txt", True)
Do While Not f.AtEndOfStream
s = f.readline
s = Mid(s, 36, 64)
f2.WriteLine (s)
Loop
End Sub
Set oFso = Nothing
Par exemple :
Option Explicit
Sub testfil()
Dim f As Scripting.TextStream
Dim f2 As Scripting.TextStream
Dim oFso As Scripting.FileSystemObject
Dim s As String
Set oFso = CreateObject("Scripting.FileSystemObject")
Set f = oFso.OpenTextFile("C:\temp\fin.txt", ForReading)
Set f2 = oFso.CreateTextFile("C:\temp\fin2.txt", True)
Do While Not f.AtEndOfStream
s = f.readline
s = Mid(s, 36, 64)
f2.WriteLine (s)
Loop
End Sub
Set oFso = Nothing