VNEZ TOUS VOIR SA !!

Mickylord Messages postés 63 Date d'inscription mardi 25 décembre 2001 Statut Membre Dernière intervention 11 février 2007 - 28 déc. 2001 à 20:29
esprit1983 Messages postés 5 Date d'inscription dimanche 2 août 2009 Statut Membre Dernière intervention 8 août 2009 - 3 août 2009 à 14:52
regardez , je ne sais pas comment faire pour ecrire une valeur numerique dans un fichier .txt . Comment je fait ???:

void EcrireDisque (void) //SAUVGARDE
{
FILE *Fichier;
Fichier = fopen ("C:\\TOTO.TXT", "w");
for (int i = 0; i < conte; i++) {
fputs (y [i], Fichier);
fputc (u[i] , Fichier);
fputs ("\n", Fichier);
}
fclose (Fichier);
}

conte , u , y sont des variables .
Et quand je l'execute , sa enregistre mais a la place de me mettre des nombres , sa me met des têtes de bonhomme qui rigoles !
J'utilise VC++ ... HHEELLPP ;)

6 réponses

cs_CyraX Messages postés 20 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 12 avril 2002
28 déc. 2001 à 21:19
arf, y s'foutent de ta gueule les bonhommes !!
je sais pas trop mais en fait ton code écrit dans le fichier le char ayant pour code ascci le num i, y...
il faudrait mettr ton int dans un pointeur vers caractère par ex :
char *buf;
sprintf(buf,"%d",y[i]);fputc(buf,fichier);
sprintf(buf,"%d",u[i]);fputc(buf,fichier);

j'ai pas testé.... je suis pas vraiment sur que ca va marcher mais tu ferais bien d'essayer.
Réponds pour dire si ca marche ou pas stp.
merci
a+
CyraX
0
header Messages postés 19 Date d'inscription lundi 9 octobre 2000 Statut Membre Dernière intervention 23 juin 2002
28 déc. 2001 à 21:49
-------------------------------
Réponse au message :
-------------------------------

arf, y s'foutent de ta gueule les bonhommes !!
je sais pas trop mais en fait ton code écrit dans le fichier le char ayant pour code ascci le num i, y...
il faudrait mettr ton int dans un pointeur vers caractère par ex :
char *buf;
sprintf(buf,"%d",y[i]);fputc(buf,fichier);
sprintf(buf,"%d",u[i]);fputc(buf,fichier);

j'ai pas testé.... je suis pas vraiment sur que ca va marcher mais tu ferais bien d'essayer.
Réponds pour dire si ca marche ou pas stp.
merci
a+
CyraX
0
cs_Manson Messages postés 137 Date d'inscription lundi 17 décembre 2001 Statut Membre Dernière intervention 30 septembre 2004
29 déc. 2001 à 01:05
Moi je propose ca :

FILE *fin;
int i;

fin = fopen("c:\\Test.txt", "w");

for (i = 0; i < 30; i++)
{
fprintf(fin, "%d ", i);
}

fclose (fin);

normalement ca marche !
0
cs_CyraX Messages postés 20 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 12 avril 2002
29 déc. 2001 à 10:49
effectivement, j'ai dit une grosse connerie... mais je connaissais pas la fonction fputc (j'aurais du deviner au nom mais bon...) Sinon je propose comme manson ou alors si tu veux garder fputc (pke me suis cassé la tête a cherché une solution), tu fais ca, ca devrait aller :

char c=i+int('0');fputc(c,file);
char c=j+int('0');fputc(c,file);

ca devrait aller cette foi ci

a+
CyraX
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mickylord Messages postés 63 Date d'inscription mardi 25 décembre 2001 Statut Membre Dernière intervention 11 février 2007
29 déc. 2001 à 11:35
ouaip c bon ;)
0
esprit1983 Messages postés 5 Date d'inscription dimanche 2 août 2009 Statut Membre Dernière intervention 8 août 2009
3 août 2009 à 14:52
Si vous utilisez VC++ alors vous pouvez utiliser <fsteam>
voici un code
#include<fstream>
void EcrireDisque()
{
  ofstream fichier("C:\\TOTO.TXT",ios::app);
  for (int i = 0; i < conte; i++) 
  fichier>>y [i]>>u[i]>>endl;
  fichier.close();
}

j'ai pas tester le code donc il vous faut le tester dans votre programme
0
Rejoignez-nous