Supprimer une chaine dans un fichier

Supprimer une chaine dans un fichier - C - Programmation

Marsh Posté le 04-09-2003 à 11:40:08    

Salut,
 
En C, dans un fichier, je souhaite supprimer une chaine, par exemple "toto", ou même la remplacer par autre chose.
 
Comment faire pour supprimer ou remplacer simplement cette chaine, sans passer par un 2è fichier de traitement ?
 
Merci !


---------------
Savoir c'est vivre, et maintenir dans l'ignorance c'est presque un homicide
Reply

Marsh Posté le 04-09-2003 à 11:40:08   

Reply

Marsh Posté le 04-09-2003 à 11:42:05    

Ouvre ton fichier, charge le entierement en memoire, fait tes modifs et resauve le

Reply

Marsh Posté le 04-09-2003 à 11:45:42    

Ya t-il une fonction qui permet de remplacer une sous-chaine par une autre dans une zone mémoire ? (remplacer "toto" par "titi" dans la zone "tiens voila toto" )
Ou alors je dois me taper tous les traitements moi-même bouh
 
:)


---------------
Savoir c'est vivre, et maintenir dans l'ignorance c'est presque un homicide
Reply

Marsh Posté le 04-09-2003 à 11:49:45    

utilise strstr pour recupérer la position d'une sous chaine dans une chaine.
Ensuite faut voir, y a plusieurs cas.
 
Si la nouvelle chaine est + petite que l'ancienne, tu reecrit dessus direct et tu fait la recopie du reste du fichier.
Si les tailles sont egales, pas de problems tu remplaces
si nouvelle chaine + grande, faut reallouer la memoire recopier le fichier et calculer combien d'octet tu va avoir besoin.

Reply

Marsh Posté le 04-09-2003 à 11:52:18    

Ok merci je vais voir comme çà.
 
Je tiens à dire quand même que la manipulation de chaines, c'est vraiment ce qu'il ya de plus pénible en programmation :)


---------------
Savoir c'est vivre, et maintenir dans l'ignorance c'est presque un homicide
Reply

Marsh Posté le 04-09-2003 à 11:55:50    

cypress a écrit :


Je tiens à dire quand même que la manipulation de chaines, c'est vraiment ce qu'il ya de plus pénible en programmation :)


Je crois que tu es loin de tout connaitre en programmation...[:ddr555]

Reply

Marsh Posté le 04-09-2003 à 11:59:34    

Oh t'inkiete pas pour çà  ;)  
 
Je disais "pénible" dans le sens "chiant et inintéressant"
 
Ya nettement plus complexe, mais plus passionant en même temps :)


---------------
Savoir c'est vivre, et maintenir dans l'ignorance c'est presque un homicide
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed