Re-écrire dans un fichier .txt - C - Programmation
Marsh Posté le 22-04-2007 à 22:10:32
il est assez diificile de modifier un fichier
le plus simple ets souven de recopier le fichier avec les données modifiée dans un fihcier temportaire, puis de remaplcer le fichier par le temporaire
sinon, on a inventé ( recemment ) les bases de données pour ce genre de besoin
Marsh Posté le 22-04-2007 à 22:13:20
Ouais les BDD c'est sûr que c'est très pratique, mais je fais ça pour manipuler le C avec des fichiers .txt
Ca va être très dûr à faire donc ?
Marsh Posté le 22-04-2007 à 22:17:36
non, mais passe par un fichier temporaire, ca ira mieux
tu dois pouvoir remplacer un bout de fichier, mais il faut faire tres attention a la taille des données
Marsh Posté le 22-04-2007 à 22:19:21
Ca ne risque pas d'être la galère... car avec un seul client ça doit être jouable, mais si j'en ai 5-10... aie aie non ?
Marsh Posté le 22-04-2007 à 22:25:25
Nichlas a écrit : Ouais les BDD c'est sûr que c'est très pratique, mais je fais ça pour manipuler le C avec des fichier .txt |
Tu veux sans doute dire "manipuler les fichiers txt avec le C" !!!
Nichlas a écrit : Ca va être très dûr à faire donc ? |
Ca dépend. Un fichier informatique se caractérise par 2 attributs
A partir de là, on peut avoir 4 cas
1) géographie fixe, taille fixe => chaque ligne contient les mêmes infos de même taille dans le même ordre
2) géographie fixe, taille mobile => chaque ligne contient les mêmes infos dans le même ordre mais pas de même taille => Il faut un séparateur qui sépare les infos les unes des autres (ex: un csv)
3) géographie mobile, taille fixe => chaque ligne contient les mêmes infos de même taille mais pas dans le même ordre => chaque info est donc précédée de sa caractéristique pour qu'on sache de quoi il s'agit quand on la traite
4) géographie mobile, taille mobile => t'auras bien compris le schéma
Si tu veux modifier un fichier de type "1" ou "3", pas compliqué => tu te places au début de l'enregistrement à modifier et t'en écris un autre de même taille => le nouveau remplace l'ancien
Dans les deux autres cas, évidemment, tu peux plus te faire pareil car les infos sont de tailles différentes => tu peux donc écrire trop et déborder sur l'enregistrement suivant => une première solution consiste à lire l'enregistrement, revenir en arrière de la taille lue puis reécrire par dessus. La seconde est de tout stocker le fichier en mémoire, travailler dessus puis tout réécrire !!!
Marsh Posté le 22-04-2007 à 22:26:37
Pour moi qui programme depuis 6 mois, je suis en galère quoi
Marsh Posté le 28-04-2007 à 19:08:17
Nichlas a écrit : Pour moi qui programme depuis 6 mois, je suis en galère quoi |
Arf... c'est en forgeant qu'on devient forgeron...
Marsh Posté le 22-04-2007 à 22:06:08
Salut,
j'ai un fichier texte contenant : NOM, PRENOM, SOMME, N°CLIENT
- Mon programme va regarder combien le client possède sur son compte.
- Nous sera demandé ensuite combien celui veut retirer de son compte.
Le calcul somme - somme_a_retirer est alors effectué.
Ensuite je voudrais aller modifier la somme dans le fichier texte une fois la demande de retrait effectuée, mais je ne sais pas comment faire...
Merci.
Message édité par Nichlas le 22-04-2007 à 22:08:21