Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1602 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  toujours mon problème d'écriture dans un fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

toujours mon problème d'écriture dans un fichier

n°172061
Gaspard
Posté le 05-07-2002 à 16:57:14  profilanswer
 

int n=5;
 
FILE * sortie;
 
sortie=fopen("toto","w" );
fwrite(&n,sizeof(int),1,sortie);
fclose(sortie);
 
quand je veux visualiser le contenu du fichier toto, je fais
'vi toto' et j'ai ça dans mon fichier: ^E^@^@^@ au lieu de 5 !!
 

mood
Publicité
Posté le 05-07-2002 à 16:57:14  profilanswer
 

n°172062
smaragdus
whores, drugs & J.S. Bach
Posté le 05-07-2002 à 16:59:38  profilanswer
 

et tu penses qu'en faisant un 2ième topic, on va 2 fois plus te répondre....  :sarcastic:  :sarcastic:  :sarcastic:  :sarcastic:

n°172063
try58
Posté le 05-07-2002 à 17:00:06  profilanswer
 

Gaspard a écrit a écrit :

int n=5;
 
FILE * sortie;
 
sortie=fopen("toto","w" );
fwrite(&n,sizeof(int),1,sortie);
fclose(sortie);
 
quand je veux visualiser le contenu du fichier toto, je fais
'vi toto' et j'ai ça dans mon fichier: ^E^@^@^@ au lieu de 5 !!
 
 




tu es oblige de transformer ton int en un char pour l'ecrire dans ton fichier


Message édité par try58 le 05-07-2002 à 17:00:23

---------------
LOVE & PEACE !!! [:kirvel]
n°172065
Gaspard
Posté le 05-07-2002 à 17:02:26  profilanswer
 

j'ai simplifié le pb depuis le dernier message, c'est plus un tableau timeval que je veux mettre dans le fichier, mais un entier que je veux pouvoir visualiser quand je fais vi monfichier :D

n°172070
try58
Posté le 05-07-2002 à 17:08:24  profilanswer
 

Tu utilises quoi? parce que avec VC++, tu peux faire simplement :

Code :
  1. CString tmp;
  2. int nb;
  3. tmp.Format(TEXT("%d" ), nb);
  4. fopen(...);
  5. fwrite(tmp.GetBuffer(), ... , ...);
  6. fclose(...);


---------------
LOVE & PEACE !!! [:kirvel]
n°172075
torpe23
Posté le 05-07-2002 à 17:12:49  profilanswer
 

2 solutions :
 

Code :
  1. int n=5;
  2. FILE * sortie;
  3. sortie=fopen("toto","w" );
  4. fprintf(sortie,"%d",n);
  5. fclose(sortie);


 
ou
 

Code :
  1. int n=5;
  2. FILE * sortie;
  3. char buffer;
  4. sortie=fopen("toto","w" );
  5. sprintf(buffer,"%d",n);
  6. fwrite(&buffer,sizeof(char),1,sortie);
  7. fclose(sortie);


 
Voilà, je pense qu'avec ça, ça devrait marcher !
 
 

n°172077
Gaspard
Posté le 05-07-2002 à 17:13:13  profilanswer
 

j'utilise gcc mais là je vais aller dormir un peu pour me reposer le cerveau
merci et bon week end

n°172870
Gaspard
Posté le 08-07-2002 à 14:01:39  profilanswer
 

merci torpe23
 
le fprintf, c'est ce que je voulais

n°172920
ioio
./ioio --force --nodeps
Posté le 08-07-2002 à 15:15:08  profilanswer
 

Il faut faire TRES attention aux buffer overflow avec sprintf(buffer,"%d",n);. Il faut correctement alloué la taille de buffer de sortie par rapport a la valeur d'entrée


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  toujours mon problème d'écriture dans un fichier

 

Sujets relatifs
[Sybase et nlwnsck.dll] Y'a un problème de configuration !!!JAVA servlets : envoyer un fichier à télécharger ????
écrire dans un fichierecriture dans un fichier (XML PHP)
[C] Problème de macropermissions d'écriture pour la création d'un répertoire
Probleme de chaine de caractere dans un formulaireun fichier bat sans fenetre dos
[php] probleme de varriable et de tableau 
Plus de sujets relatifs à : toujours mon problème d'écriture dans un fichier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR