Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Insérer text dans un fichier ! [ Divers / Général ] (ElectricalMan)

vendredi 28 juillet 2006 à 19:03:43 | Insérer text dans un fichier !

ElectricalMan

slt tt le monde,
est ce qu'il y a un moyen d'insérer du texte dans un fichier ss écraser ce qu' y avait ?!

//-----------------------------------------------------------------
// fonction qui rajoute un texte au début d'un fichier
//-----------------------------------------------------------------
void rajoutTextDansFic(FILE* fic, char str[])
{   
    rewind(fic);

    fprintf(fic, "%s", str);   // si je fait ça, ça écrase
}


vendredi 28 juillet 2006 à 19:24:17 | Re : Insérer text dans un fichier !

Zootella






>est ce qu'il y a un moyen d'insérer du texte dans un fichier ss écraser ce qu' y avait ?!
Au début du fichier, non.
A la fin, oui, en enlevant le
rewind.

vendredi 28 juillet 2006 à 19:27:02 | Re : Insérer text dans un fichier !

maladedede

Membre Club
Bein il faut que tu place le pointeur de la structure FILE vers la fin de ton fichier comme cela:
fseek(fic, filelength(fic), SEEK_SET);
--le 1er argument dit sur quelle structure FILE on décale le pointeur.
--le 2eme dit de combien d'octects, de caractaires que l'on deplace le pointeur du  fichier
   En effet  filelength() renvoi la taille du fichier
--Et le 3eme argument explique a partir de quel endroit on decale le fichier.

Dans le cas de SEEK_SET il faut comprendre que l'on décale de ponteur de "filelength(fic)" octect à partir du debut du fichier.


ou alors tu ouvres ton fichier en mode ajout: "a"
au lieu de: "r", "w", "r+" ou "w+"...

1/1MaLaDeDeDe 97one1/1 


vendredi 28 juillet 2006 à 19:31:16 | Re : Insérer text dans un fichier !

maladedede

Membre Club
ah il y a rewind mais moi je connais pas trop sprintf.......... donc j'ai posté comment positionner le pointeur.

1/1MaLaDeDeDe 97one1/1 


vendredi 28 juillet 2006 à 20:09:08 | Re : Insérer text dans un fichier !

SAKingdom

Membre Club
Mettre du texte au début comme au millieu, c'est possible. Mais c'est tout un sport. Premièrement, pour insérer du texte au début, tu peux mettre dans un buffer tout le texte de ton fichier, écrire ton texte pour le début, réouvrire en mode "a" puis copier le buffer dans le fichier. Avec les fonctions de l'API ça donne à peut près:

HANDLE hFile;
DWORD size, byte;
char *buffer;

hFile = CreateFile("fichier.txt", GENERIC_READ|GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);

size = GetFileSize(hFile, 0);

buffer = (char*)malloc(size); // ici j'utilise normalement VirtualAlloc mais c'est plus simple avec malloc

ReadFile(hFile, buffer, size, &byte, 0);

SetFilePointer(hFile, 0, 0, FILE_BEGIN);

WriteFile(hFile, (LPVOID)"Allo test 123 ", 14, &byte, 0);
WriteFile(hFile, buffer, size, &byte, 0);

free(buffer);
CloseHandle(hFile);

Ce bout de code fonctionne parfaitement.

C++ (@++)
___________________________________________
Les plus grands esprits trouvent toujours une solution

[ Lien ]

dimanche 30 juillet 2006 à 20:54:48 | Re : Insérer text dans un fichier !

ElectricalMan

désolé pour le tp de réponse !
donc merci les gars et SAKingdom, chouet ton idée ça marche




Cette discussion est classé dans : fichier, text, texte, insérer, fic


Répondre à ce message

Sujets en rapport avec ce message

ecriture dans un fichier texte [ par moonalex ] Bonjour à tous,je souhaite écrire chaque ligne sélectionnée dans une ListBox dans une fichier texte. j'ai fait une fonction qui se charge d'écrire dan formatage d'un texte [ par zaagane ] salutje suis etudiant universitaire et jai quelques problemes :comment ouvrir un fichier text pour formater le comment ecrit  des lignes a la insérer dans un fichier [ par catamenia ] bonjour, J'arrive à écrire dans un fichier text en c++ grace a writeFile mais ça écrase le text qu'il y a derriere alors que j'aimerais pouvoir insére Fichier texte [ par spike666 ] Etant tres nul... et ne preférant pas chercher 3h des morceaux de codes pour finir sur un truc ki marchera pas je vais demander directement ce que je Lire dans un fichier [ par tony_73 ] <img style="BORDER-LEFT-COLOR: black; BORDER-BOTTOM-COLOR: black; BORDER-TOP-COLOR: black; BORDER-RIGHT-COLOR: black; border-size: 1px" src="/gdi/um/5 fichiers texte (windows/unix) [ par Lapin0u ] Bonjour tout le monde,J'ai un petit problème qui me semble insoluble et j'ai besoin de vos lumières. Quelqu'un m'envoie un fichier texte avec un progr fichier texte a excels [ par wantofirst ] bonjour a tousj'ai un petit problèmej'ai fai un programme qui met  des données numériques dans un fichier texte;mais lorsque je veux utiliser les donn fichier texte [ par jul41 ] Salut, savez-vous comment on peut écrire dans un fichier texte après la ligne 8 par exemple?Merci d'avance! (BUILDER) Rechercher dans un fichier texte [ par lomat62 ] voila mon Pb.je doit lire un fichier texte qui conporte des donnée sur des objet exemple de ligne: M1 NP Tau 8.2m 6' J50   5h34.5 +22°01 N1952 M2 AG A ofstream et écriture dans un fichier texte [ par bobybx ] Bonjour,J'ai une question peut-être bête mais je suis bloqué :J'ai un fichier texte avec 3 lignesligne 1ligne 2ligne 3Le contenu de ces lignes varient


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 1,108 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.