Ecrire au milieu d'un fichier sans tout casser? - C++ - Programmation
Marsh Posté le 14-06-2005 à 22:56:53
en gros tu veux faire une insertion : pas possible. Sauf si les enregistrements sont de taille fixe et que tu as réservé la place au milieu.
Marsh Posté le 14-06-2005 à 23:03:35
Merci pour ta réponse.
C'est craignos!
Je vais donc devoir écrire à fin du fichier.
Le probleme va alors etre la relecture.
Y a t il un moyen de lire la derniere ligne en une fois, en combinant seek et >> ?
Marsh Posté le 14-06-2005 à 23:46:59
pourquoi tu ne réserves pas la place au début pour y écrire par la suite ?
Marsh Posté le 14-06-2005 à 23:48:48
Encore merci
Je pense que je vais alors reserver 4 caracteres pour stocker la quantité et tantpis si y'en a plus.
Bonne nuit
EDIT : grilled by Harkonnen
Marsh Posté le 15-06-2005 à 01:44:35
Sinon tu pourrai stocker ce qu'il y a apres, ecrire ton enregistrement et réécrire ce qu'il y avait après. C'est un peu lourd evidement, mais c'est pour traiter des gros fichiers?
Marsh Posté le 15-06-2005 à 18:24:02
C'est pour un projet donc pas pour un cas réel mais je pense que la méthode barbarian ne plaira pas à l'examinateur!
Sinon merci de t'etre penché sur le probleme
Marsh Posté le 14-06-2005 à 22:47:57
Salut codeurs et codeuses
J'ai besoin de constituer un fichier texte pour faire une sorte de serialisation.
Pour cela j'ecris le nom de ma classe, je saute une ligne puis j'ecris mes enregistrements.
Et a la fin de mon prog, je reviens pour noter le nombre d'enregistrements dans la ligne vide.
LaClasse
//la ligne vide
Enregistrement1
Enregistrement2
Enregistrement3
Voila a quoi ca ressemble.
Le soucis est que quand je viens ecrire dans cette ligne, je bouffe les caracteres de la ligne suivante.
J'utilise des fstream et aucune des methodes write() ou << ne fonctionne correctement.
Quelqu'un sait il faire autrement?
Un grand merci!