Valeur dans un fichier TXT

Résolu
cs_norton Messages postés 215 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 21 août 2011 - 20 mars 2006 à 14:27
cs_norton Messages postés 215 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 21 août 2011 - 21 mars 2006 à 13:54
Bonjour,

Mon programme doit affecter une valeur à une variable, cette valeur se trouve dans un fichier txt.
jusque la ok, mais une fois que mon programme lis ce fichier la valeur de la variable devient le dernier chiffre du fichier.

EX: dans mon fichier j'ai le chiffre 523, et quand j'affiche la valeur que ma variable a reçu c'est 3.
je dois suremment pas lire correctemment mon fichier ?.

Pouvez-vous m'aider ?

Merci
Norton

4 réponses

SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
20 mars 2006 à 23:17
while(!feof(fichierIM))
{
fread(&bufferIM,1,1,fichierIM);
Couleur.IC_Mail = bufferIM;
}

tu te trouve ici à toujours affecter un nouvelle valeur à bufferIM et en plus bufferIM est char. Marche pas ça si ta plus d'un caractère. Il te faut char*. Si ta rien d'autre après ton chiffre ou un espace, utilise fscanf

char *bufferIM;

bufferIM = (char*)malloc(255*sizeof(char)); /* pour allouer asser de mémoire pour 255 caractères */
fscanf("%s", &bufferIM);

___________________________________________
Les plus grands esprits trouvent toujours une solution
3
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
20 mars 2006 à 14:58
Mets ton code ici

Shell
0
cs_norton Messages postés 215 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 21 août 2011
20 mars 2006 à 15:05
if(CheckFile("Systeme/IMail.AMI") == true)
{
FILE *fichierIM;
char bufferIM;


fichierIM = fopen("Systeme/IMail.AMI","a+");
if(fichierIM == NULL)
{
MessageBox(NULL,"Erreur d'ouverture du fichier interface Mail","AlphaMail",+0);
Form4->Shape5->Brush->Color = clMoneyGreen;
}


while(!feof(fichierIM))
{
fread(&bufferIM,1,1,fichierIM);
Couleur.IC_Mail = bufferIM;
}
fclose(fichierIM);


}
0
cs_norton Messages postés 215 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 21 août 2011
21 mars 2006 à 13:54
Nikel ca fonctionne parfaitemment. Merci beaucoup.
0
Rejoignez-nous