begin process at 2012 05 30 04:29:55
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

supprimer une ligne contenu dans un fichier txt


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

supprimer une ligne contenu dans un fichier txt

mercredi 31 mai 2006 à 17:59:53 | supprimer une ligne contenu dans un fichier txt

cobra176

bonjour a tous

je recherche un code permettant de retirer une ligne contenu dans un fichier
j'ai vu qu'il existé déja des codes permettant cela mais j'ai esssaye et il ne marche pas
alors je demande de l'aide pour créer cette code

pour information
les informations sont contenu dans un fichier appellé carnet.txt et je veux supprimer la ligne entier

merci de votre aide
mercredi 31 mai 2006 à 20:39:07 | Re : supprimer une ligne contenu dans un fichier txt

deck_bsd

Membre Club
Yop,

Tu lit séquencielement ton fichier et tu range les phrase dans un buffer (soite liste chainée si tu veu pas perdre de la mémoire, ou simplement une chaine de caractère assez grande) et on fois que tu a trouvé la phrase a retiré, tu passe et tu continue d'écrire dans le buffer. A la fin de la lecture, tu replace tout les contenu du buffer dans ton fichier (mode 'w' pour re crée un fichier du même nom) ou dans un autre et le tour est joué.

Les fonctions :

FILE * = fopen("carnet.txt","r") remplacer le "r" par "w" a la ré écriture.
Pour lire , ben tu a le choix. mais vu que tu doit lire séquencielement je te conseil fgets().
Pour ecrire, ben la aussi tu a le choix , si tout ton text ce trouve dans une chaine de caractère utilise plutot fwrite() (change alors le "w" en "w+") et si c'est dans une chaine de caractère fputs dans une boucle for fera l'affaire.

Voila

PS : tu apprendra mieu en le codant toi même ;)
mercredi 31 mai 2006 à 20:39:38 | Re : supprimer une ligne contenu dans un fichier txt

deck_bsd

Membre Club
pas oublié fclose() a la fin de la lecture et de l'écriture.
mercredi 31 mai 2006 à 21:52:36 | Re : supprimer une ligne contenu dans un fichier txt

BruNews

Administrateur CodeS-SourceS
Pourquoi lire par passes si tu mettras tout dans un buffer ??? en ce cas lis tout en 1 passe, ensuite avance un pointeur en comptant les '\n', à la finale on ecrit en 2 passes.

ciao...
BruNews, MVP VC++
jeudi 1 juin 2006 à 19:50:49 | Re : supprimer une ligne contenu dans un fichier txt

deck_bsd

Membre Club
j'ai tous suivi apart le "on écrit en 2 passe". tu divise le buffer en deux?
jeudi 1 juin 2006 à 20:56:02 | Re : supprimer une ligne contenu dans un fichier txt

BruNews

Administrateur CodeS-SourceS
mais non voyons.

2 pointeurs, 1(p1) est positionné sur debut ligne à virer et l'autre (p2) a fini sur debut du second bloc du buffer à conserver.

donc:
DWORD d;
SetFilePointer(hfl, 0, 0, FILE_BEGIN);
WriteFile(hfl,  buff, p1 - buff, &d, 0);
WriteFile(hfl, p2, buff + sizefl - p2, &d, 0);
SetEndOfFile(hfl);
CloseHandle(hfl);

ciao...
BruNews, MVP VC++
vendredi 2 juin 2006 à 15:36:30 | Re : supprimer une ligne contenu dans un fichier txt

deck_bsd

Membre Club
M**** c'est con. C'est super ça. Pas bête dutout. Je vai vite appliquer ça :p pour bien maitriser le bazar lol.


Cette discussion est classée dans : fichier, ligne, txt, supprimer, contenu


Répondre à ce message

Sujets en rapport avec ce message

C : Supprimer une ligne d'un fichier [ par liloulola ] Bonjour, ca y est, j'arrive à stocker mes structures dans un fichier !En fait, je stocke plusieurs enregistrements du type %s%s%s/nJe souhaiterais pou saut de ligne dans un fichier .txt [ par semenzato ] bonjour ,je voudrais savoir comment faire un saut de ligne dans un fichier texte car mon instruction \n n'est pas comprise et il en resulte un carré n lire un fichier txt ligne par ligne [ par lapinrose67 ] Bonsoir,Je developpe un logiciel en C sous Linux, voila mon problème:Je dois lire un fichier texte ligne par ligne et placer chacune d'entre ellesdans Supprimer une ligne dans un fichier [ par PunkDude424 ] Je voudrais savoir comment faire pour supprimer une ligne dans un fichier texte ?? Est-ce qu'il existe une commande pour supprimer une ligne dans un f transformer un fichier txt en binaire pr ke contenu soit illisible [ par ryukengouki ] Je crois bien avoir défini mon PB dans le sujet...je m'explique...en fait je souhaite que mon fichier ne soit pas lisible par un utilisateur quelconqu Supprimer la dernière ligne d'un fichier... [ par Clonk ] Bonjour,je voudrais pouvoir supprimer la dernière ligne d'un fichier le plus rapidement possible...En fait, j'ajoute une ligne dans un fichier pendant Ajouter un CString a chaque ligne fichier TXT [ par kilory ] Salut,j'est un fichier txt que j'ouvre avec la commande fopen et je vourais ajouter a chaque debut de ligne du texte un slach . merci. afficher le contenu d'un fichier txt en C [ par moreman ] salut je voudrais afficher afficher le contenu d'un fichier txt en C a l'ecranen fait j'ai fait la creation et l'ecriture de données dedans mais je tr passage à la ligne dans un fichier.txt aprés chaque mot [ par romydamour ] salut à tous, j'ai un souci avec le passage à la ligne dans un fichier texte, j'ai su transférer le contenu de plusieurs fichiers dans un seul et même Comment faire pour lire un fichier .txt, et afficher son contenu dans un control CRichEditView [ par isirnet ]


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales