Bonjour, je voudrais écrire des entiers dans un fichier texte, mais lorsque je les inscrits, ils sont interprêtés comme caractères, j'obtiens donc des "L" "o" ";" etc...
avec la méthode write(), comment pourrais-je m'y prendre?
merci!
Version imprimable
Bonjour, je voudrais écrire des entiers dans un fichier texte, mais lorsque je les inscrits, ils sont interprêtés comme caractères, j'obtiens donc des "L" "o" ";" etc...
avec la méthode write(), comment pourrais-je m'y prendre?
merci!
Je vais me faire taper sur les doigts par Emmanuel pour ce raccouci ignoble, mais write() et fwrite() ne servent pas à écrire des fichiers texte: write() et fwrite() servent à écrire dans des fichiers binaires.
Pour commencer, tu devrais utiliser les fonctions de <stdio.h> (fopen(), etc.) et non les fonctions à bas niveau. Surtout pour un fichier texte.
Et pour ton entier, je te conseille d'utiliser fprintf().
write(), bien que POSIX.1 n'est pas définie par la norme du langage C. Je recommande de travailler en mode flux (FILE *, fopen(), <stdio.h>) et d'utiliser la fonction d'écriture fprintf() pour convertir les valeurs numériques en texte.Citation:
Envoyé par seb__
Bon, ben, grillaid...
magnifique ça fonctionne parfaitement avec fprintf :D et c'est en effet bien plus intuitif...
merci beaucoup!