Problème de lecture fichier C
nicolay1
Messages postés
176
Statut
Membre
-
0kid0ki Messages postés 192 Statut Membre -
0kid0ki Messages postés 192 Statut Membre -
Bonjour,
J'ai un ptit problème avec ce code :
ce code est sensé retourné le contenu du fichier level1.lvl
le fichier s'ouvre, c'est certain, mais la fonction fgetc(FILE*) bug, elle ne renvoie rien :/ tout comme la fonction fgets(char * tab, int tailleMax, FILE*) et je ne sais pas pourquoi :/ quelqu'un aurait une idée ?
fichier level1.lvl :
111111111111100000000001102000000001100000005001100005000401100000000001100030000001100000002001100200000001100000030001100000000401111111111111
Mici ^^
J'ai un ptit problème avec ce code :
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int level=1;
char nom[12]="level";
char tab[250];
char caractere='z';
if(level<10)
{
nom[5]=48+level;
nom[6]='.';
nom[7]='l';
nom[8]='v';
nom[9]='l';
nom[10]='\0';
}
if(level>10)
{
nom[5]=48+(int)(level/10);
nom[6]=48+(level-(int)(level/10)*10);
nom[7]='.';
nom[8]='l';
nom[9]='v';
nom[10]='l';
nom[11]='\0';
}
printf("%s",nom);
FILE *fichier=NULL;
fichier=fopen(nom,"r");
printf("\n%c", caractere);
caractere=fgetc(fichier); // On lit maximum TAILLE_MAX caractères du fichier, on stocke le tout dans "chaine"
printf("\n%c", caractere); // On affiche la chaîne
fclose(fichier);
printf("%s",tab);
return 0;
}
ce code est sensé retourné le contenu du fichier level1.lvl
le fichier s'ouvre, c'est certain, mais la fonction fgetc(FILE*) bug, elle ne renvoie rien :/ tout comme la fonction fgets(char * tab, int tailleMax, FILE*) et je ne sais pas pourquoi :/ quelqu'un aurait une idée ?
fichier level1.lvl :
111111111111100000000001102000000001100000005001100005000401100000000001100030000001100000002001100200000001100000030001100000000401111111111111
Mici ^^
A voir également:
- Problème de lecture fichier C
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
1 réponse
Bonjour,
tout d'abord je ne comprends pas pourquoi tu fais :
ensuite pourquoi est ce que tu parles de fgets il n'y en a pas un dans ton programme.
et puis WTF ??...
revoie ton code ou ton copie collé parce que la il y a plus que les pbs sur tes fget_();
Note a Benêt :
une lecture de fichier c'est très sujet aux erreurs donc normalement il faut adopté un systéme d'écriture bien différent de celle que tu utilise :
tout d'abord je ne comprends pas pourquoi tu fais :
printf("\n%c", caractere);Avant de lui assigné la première valeur du fichier.
ensuite pourquoi est ce que tu parles de fgets il n'y en a pas un dans ton programme.
et puis WTF ??...
caractere=fgetc(fichier); // On lit maximum TAILLE_MAX caractères du fichier, on stocke le tout dans "chaine"
revoie ton code ou ton copie collé parce que la il y a plus que les pbs sur tes fget_();
Note a Benêt :
une lecture de fichier c'est très sujet aux erreurs donc normalement il faut adopté un systéme d'écriture bien différent de celle que tu utilise :
FILE *truc;
truc = fopen(...);
if (truc == NULL)
{
printf ("impossible de lire le fichier !\n")
system ("pause") ;
}
else
{
lecture (truc,...) ;
if ('test pour voir si la lecture à réussi') idem que le if précédent;
fclose (truc) ;
}