Ecriture Lecture Fichier sur une position ou ligne avec ColdFusion

succesdetojo Messages postés 3 Date d'inscription samedi 24 février 2007 Statut Membre Dernière intervention 6 mai 2008 - 28 avril 2008 à 15:58
nickadele Messages postés 1251 Date d'inscription mercredi 7 août 2002 Statut Modérateur Dernière intervention 10 avril 2013 - 28 avril 2008 à 17:09
Bonjour tout le monde,

Voilà j'ai un petit problème et je fais appel à votre aide car d'autres personnes pourraient certainement en avoir besoin.
A cause de ce problème je suis bloqué par un code hyper lourd.

Alors voilà le "petit" problème:

Je veux éditer un fichier (par exemple un txt) en modifiant (remplaçant) un texte à une position dans le fichier.

Je n'arrive pas à trouver la solution car le seul truc que j'ai pu faire, c'est de faire un cffile read et ensuite changer le texte
dans la variable et ensuite faire un cffile write de la variable modifiéé; donc écriture du fichier à 100%. Alors que ce que je veux faire c'est de modifier juste une partie du fichier.

Merci d'avance pour vos aides car j'en ai vraiment besoin rapidement.

3 réponses

nickadele Messages postés 1251 Date d'inscription mercredi 7 août 2002 Statut Modérateur Dernière intervention 10 avril 2013
28 avril 2008 à 16:20
Bonjour,

le seul moyen de modifier un fichier c'est
-soit d'y ajouter une nouvelle entrée:
<cffile action = "append"
file = "full_path_name"
output = "string"
addNewLine = "yes" or "no"
attributes = "file_attributes_list"
mode = "mode"
charset = "charset_option" >

-soit de réécrire son contenu :
<cffile
action = "write"
file = "full_path_name"
output = "content"
mode = "permission"
addNewLine = "yes" or "no"
attributes = "file_attributes_list"
charset = "charset_option" >

Nickadele
----------------------------------------------
non, ma belle ne s'appel pas Adèle
0
succesdetojo Messages postés 3 Date d'inscription samedi 24 février 2007 Statut Membre Dernière intervention 6 mai 2008
28 avril 2008 à 16:32
Merci pour cette réponse rapide.

J'ai déjà vu ce cffile append, mais le problème ce qu'il rajoute seulement une nouvelle entrée sur la dernière ligne ou sur une nouvelle ligne. Alors que ce que je recherche c'est de modifier à une position précise ou bien au moins rajouter une nouvelle entrée à une position précise.

Merci quand même pour la réponse, je crois que je vais devoir me résigner sur le fait de devoir réécrire tout le contenu en attendant que quelqu'un puisse trouver une solution (espérons qu'il en existe).

Je pensais que ce serait peut être possible en utilisant un outil (objet) externe autre que cfm, par exemple java ou autre.
0
nickadele Messages postés 1251 Date d'inscription mercredi 7 août 2002 Statut Modérateur Dernière intervention 10 avril 2013
28 avril 2008 à 17:09
Re,

de toute façon, peu importe la méthode que tu utiliseras pour remplacer la ligne de ton fichier, tu devras réécrire l'ensemble du fichier.
Généralement ça va assez vite, sauf si ton fichier fait des mégas. Mais dans ce cas je te consseillerais d'utiliser une DB.

Nickadele
----------------------------------------------
non, ma belle ne s'appel pas Adèle
0