Fichier txt: ouvrir, chercher, modifier, fermer [Résolu]

Signaler
Messages postés
10
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
23 novembre 2008
-
Messages postés
840
Date d'inscription
mercredi 22 octobre 2003
Statut
Membre
Dernière intervention
7 janvier 2009
-
Bonjour, j'essaie de modifier un fichier texte  qui est de la forme suivante:
# Water Kin. Viscosity (sq. m/sec * 10^-6) (min 0.8, max 1.31)
1118
# Base Eddy Kin. Viscosity (non-dimensional, min 1.0)
10.0
# Water Depth (metres) (max=10000.0)
10000.0

et ça continu...

Par example j'ai besoin de modifier la valeur 1118 par 1120 pour le moment j'ai le code suivant:

Open "" For Input As #1   
Open "" For Output As #2

Do While Not EOF(1)   
    Input #1, MyString1   
     Newstring1 = replace(MyString1, 1118, 1120)
    
Print #2, Newstring1
Loop
Close #1
Close #2

Cela me donne le fichier texte suivant:
# Water Kin. Viscosity (sq. m/sec * 10^-6) (min 0.8
 max 1.31)

1120

# Base Eddy Kin. Viscosity (non-dimensional
 min 1.0)

10.0

# Water Depth (metres) (max=10000.0)

10000.0

Il semblerait que le Input #1 considere "," comme étant un changement de ligne et ça me pose probleme. y aurait il un moyen de remedier à cela?
Merci.

3 réponses

Messages postés
1566
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
5 avril 2013
6
Bonjour,

Regarde dans ton aide en ligne Line Input
Messages postés
10
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
23 novembre 2008

En effet, merci.
Messages postés
840
Date d'inscription
mercredi 22 octobre 2003
Statut
Membre
Dernière intervention
7 janvier 2009
9
Salut,
On est bien en .NET?

Si oui, ceci fonctionne très bien:
IO.File.WriteAllText("C:\MonFichier.txt",IO.File.ReadAllText("C:\MonFichier.txt").Replace("1118", "1120"))
Mais c'est vraiment pour faire simple, vaut peut-être mieux de parcourir chaque ligne séparément avec ReadAllLines.