jule29
Messages postés10Date d'inscriptiondimanche 17 février 2008StatutMembreDernière intervention23 novembre 2008
-
23 nov. 2008 à 16:19
Kevin.Ory
Messages postés840Date d'inscriptionmercredi 22 octobre 2003StatutMembreDernière intervention 7 janvier 2009
-
24 nov. 2008 à 01:07
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.
Kevin.Ory
Messages postés840Date d'inscriptionmercredi 22 octobre 2003StatutMembreDernière intervention 7 janvier 200911 24 nov. 2008 à 01:07
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.