begin process at 2008 07 19 02:22:02
1 212 688 membres
27 nouveaux aujourd'hui
14 165 membres club

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 : Utilisation de fread [ Archives / Fichier / Disque ] (Msgbox)

Utilisation de fread le 04/09/2002 12:01:08

Msgbox
G un tres gros probleme.
Je voudrais lire un fichier sans le lire caractere par caractere en utilisant fread. Le fichier terminus comporte les caracteres suivants: "abcdefghijkl" Voila mon code:
#include "stdafx.h"
#include "stdio.h"
#include "string.h"
#include "stdlib.h"

int main(int argc, char* argv[])
{
FILE *Fil1;
char Fl;
char *Fl1;
Fil1=fopen("c:\\Terminus.txt","rb");
int i;
fread(&Fl,6,1,Fil1); //c la le bleme
fclose(Fil1);
Fl1=&Fl;

printf(Fl1);
getchar();
return 0;
}
J'aurais bien aime faire printf(*&Fl) mais ca lance le debugger et ca affiche "Unhandled exeption in prog.exe: 0XC0000005, access violation"
Mais c pas la le probleme. Le probleme c quand je veux lire par exemple les 7 premiers octets du fichier(fread(&Fl,7,1,Fil1); ) ca remet le meme message avec le debugger.
En clair, je ne peux lire que les 6 premiers octets, rien de plus et encore qund je veux lire 4 octets ca m'affiche "abcd:<B", quand j'en veux lire 5: "abcde<B" et pour 6 ca fait "abcdefB". G auassi remarque que l'adresse de l(&Fl) comportait 7 chiffres, ca a peut etre a voir quelque chose avec mon probleme.
Sinon le prog C fait en VC++60, le fichier n'etait pas protege contre l'ecture ni ecriture et il etait pas utilise par un autre programme.
Si vous avez une soluion s'il vous plait aidez moi ca serait sympa

Msgbox

Re : Utilisation de fread le 04/09/2002 15:14:44

TheRod23
Salut,

tu devrais allouer de la mémoire pour recevoir ta chaine parce que la tu n'as alloué qu'un seul caractére (char Fl;) au lieu d'une chaine (char Fl[x];)

Bon code

TheRod23



-------------------------------
Réponse au message :
-------------------------------

G un tres gros probleme.
Je voudrais lire un fichier sans le lire caractere par caractere en utilisant fread. Le fichier terminus comporte les caracteres suivants: "abcdefghijkl" Voila mon code:
#include "stdafx.h"
#include "stdio.h"
#include "string.h"
#include "stdlib.h"

int main(int argc, char* argv[])
{
FILE *Fil1;
char Fl;
char *Fl1;
Fil1=fopen("c:\\Terminus.txt","rb");
int i;
fread(&Fl,6,1,Fil1); //c la le bleme
fclose(Fil1);
Fl1=&Fl;

printf(Fl1);
getchar();
return 0;
}
J'aurais bien aime faire printf(*&Fl) mais ca lance le debugger et ca affiche "Unhandled exeption in prog.exe: 0XC0000005, access violation"
Mais c pas la le probleme. Le probleme c quand je veux lire par exemple les 7 premiers octets du fichier(fread(&Fl,7,1,Fil1); ) ca remet le meme message avec le debugger.
En clair, je ne peux lire que les 6 premiers octets, rien de plus et encore qund je veux lire 4 octets ca m'affiche "abcd:<B", quand j'en veux lire 5: "abcde<B" et pour 6 ca fait "abcdefB". G auassi remarque que l'adresse de l(&Fl) comportait 7 chiffres, ca a peut etre a voir quelque chose avec mon probleme.
Sinon le prog C fait en VC++60, le fichier n'etait pas protege contre l'ecture ni ecriture et il etait pas utilise par un autre programme.
Si vous avez une soluion s'il vous plait aidez moi ca serait sympa

Msgbox

Re : Utilisation de fread le 04/09/2002 20:52:54

Msgbox
Je sais mais il faut que le nb de caracteres soit le meme que n'importe quel fichier, et avec char Fl[x]
je dois specifier un nombre exact

Re : Utilisation de fread le 08/09/2002 11:31:52

vbnul
C clair, il fo que tu fasses un malloc sur la char et
que tu appelle fread aprés.

realloc aprés.......

et ensuite free, pour faire propre.


Classé sous : lire, probleme, fl, fread, fil1

Participer à cet échange

Pub



Appels d'offres

Dessins techniques
Budget : 60€
Animation Flash - Doma...
Budget : 370€
Application flash medi...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

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

Boutique

Boutique de goodies CodeS-SourceS