Ecriture dans un fichier

Signaler
Messages postés
70
Date d'inscription
mercredi 24 septembre 2003
Statut
Membre
Dernière intervention
16 juin 2010
-
Messages postés
70
Date d'inscription
mercredi 24 septembre 2003
Statut
Membre
Dernière intervention
16 juin 2010
-
voila mon pti pb :
j'ai fai un prog ki li un fichier caractére par caractere, qui inverse les bits de chaque caractére (grace a l'operateur binaire "~") et ki ecrit le resultat dans un fichier (cryptage par inversion de bits).
Mon prog marche impec' pour ce ki est des petit fichier texte, pa tro gro, mai pour tester g voulu crypter le programme 'freecell' de windows. Mai le fichier de sorti n'est pa entier!! je ne peu crypter qu'environ 1/10eme du prog! qqn aurait il une idée de la raison, et egalement de la solution?
Merci d'avance.

7 réponses

Messages postés
1100
Date d'inscription
jeudi 24 avril 2003
Statut
Membre
Dernière intervention
17 octobre 2012
7
Sûrement qu'il y a pas assez de mémoire pour allouer tout l'espace du fichier

Vous voulez des RPG gratuits allez sur http://jeux.jscv.com !!!

Le créateur du site http://www.jscv.com
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
8
bien sur qu'il y a assez d'espace

tu ouvre bien le fichier en binaire ?
Messages postés
70
Date d'inscription
mercredi 24 septembre 2003
Statut
Membre
Dernière intervention
16 juin 2010

pour ouvrir le fichier je tape :

FILE *fichier;
fichier = fopen(NomFichier, "w");

je sai pa si ca l'ouvre en binaire, mai comme j'écri des caractere dedan, pa besoin de l'ouvrir en binaire, si?
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
8
fichier = fopen(NomFichier, "wb"); et "rb" en lecture

ensuite lit dans un buffer avec fread et ecris avec fwrite
Messages postés
70
Date d'inscription
mercredi 24 septembre 2003
Statut
Membre
Dernière intervention
16 juin 2010

jsai ke jsui un peu nul mai il me fo just une ou 2 ptite explication :
*un buffer c'est bien un endroit ou on met les donné provisoirement?
*comment faire pour creer un buffer?
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
8
char *buffer =malloc( taille_du_fichier );

fread( buffer, 1, taille_du_fichier, fichier);

fclose( fichier );

/* travaille sur buffer comme tu fait pour un tableau de char */

free( buffer );
Messages postés
70
Date d'inscription
mercredi 24 septembre 2003
Statut
Membre
Dernière intervention
16 juin 2010

ok merci bocou djl, ton aide va m'être precieuse ;)