Modification fichier TXT en vbs

Le
Shrine
Bonjour,

Je dois modifier un fichier tnsnames.ora. Dans un premier temps je
dois retrouver une chaine de caractères, ex : instance1 =, puis
supprimer les 191 lignes qui suivent. et enfin ajouter en fin de
fichier les nouvelles instances.Pour l'ajout je n'ai pas de problèmes.

Je bloque quant à la facon de faire la suppression des 192 lignes.

Merci pour votre aide.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Youri Ligotmi
Le #22532141
Shrine a écrit :
Bonjour,

Je dois modifier un fichier tnsnames.ora. Dans un premier temps je
dois retrouver une chaine de caractères, ex : instance1 =, puis
supprimer les 191 lignes qui suivent. et enfin ajouter en fin de
fichier les nouvelles instances.Pour l'ajout je n'ai pas de problèmes.

Je bloque quant à la facon de faire la suppression des 192 lignes.

Merci pour votre aide.



A mon sens le plus simple est de lire le fichier ligne à ligne et
d'écrire chacune d'elles dans un fichier temporaire jusqu'à trouver la
chaîne recherchée puis d'ajouter au fichier temporaire les lignes
prévues, ensuite on supprime le fichier d'origine et on renomme le
fichier temporaire en tnsnames.ora
HTH
YL
Th.A.C
Le #22532311
Le 16/08/2010 11:37, Shrine a écrit :
Bonjour,

Je dois modifier un fichier tnsnames.ora. Dans un premier temps je
dois retrouver une chaine de caractères, ex : instance1 =, puis
supprimer les 191 lignes qui suivent. et enfin ajouter en fin de
fichier les nouvelles instances.Pour l'ajout je n'ai pas de problèmes.

Je bloque quant à la facon de faire la suppression des 192 lignes.

Merci pour votre aide.



je dirai de lire le fichier et de le placer dans un tableau de chaines
de caractères:
DIM Fichier, BlocFichier
SET Fichier = Fso.OpenTextFile(sNomFichier,1)
BlocFichier = Fichier.ReadAll ' Lit le fichier d'un bloc
Fichier.Close


Puis renommer le fichier en tnsnames.ora.original (par exemple)


Faire la recherche en mémoire pour trouver 'instance1' et noter l'index
de du tableau de chaine.


Ecrire le nouveau fichier tnsnames.ora grace à l'index trouvé juste
avant puis rajouter les lignes manquantes.

Notes:
- je ne sais pas s'il existe l'équivalent de ReadAll pour write
- on peut tronquer le tableau (pour supprimer les lignes en trop) avec
redim preserve(x)
(il faut peut-être mettre le tableau à une taille fixe avant)
Publicité
Poster une réponse
Anonyme