Ecrir un espace dans un fichier binaire

Résolu/Fermé
D_A_R_K_O_S Messages postés 98 Date d'inscription vendredi 1 février 2013 Statut Membre Dernière intervention 23 juin 2015 - 20 déc. 2013 à 22:11
D_A_R_K_O_S Messages postés 98 Date d'inscription vendredi 1 février 2013 Statut Membre Dernière intervention 23 juin 2015 - 21 déc. 2013 à 12:52
Bonjour,
J'ai un programme où un fichier est ouvert en mode écriture binaire ("wb") et j'aimerais insérer un espace et un retour à la ligne dedans.

fputs("  \n", fichier);

Ne marche pas...
Quelqu'un saurait comment faire ?
Merci d'avance !
A voir également:

3 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
20 déc. 2013 à 22:26
Si ça ne marche pas c'est qu'il y a une erreur ailleurs.
Poste ton programme en entier.
Et n'oublie pas d'utiliser la balise "code" (à droite du bouton souligné) et choisis le C :-).

Cdlt,
0
D_A_R_K_O_S Messages postés 98 Date d'inscription vendredi 1 février 2013 Statut Membre Dernière intervention 23 juin 2015 7
21 déc. 2013 à 10:03
Le code était celui ci :

fichier = fopen("fichierAjout", "wb");
if (!fichier) return 0;
fputs("  \n", fichier);
fclose(fichier);


Mais ça marche en remplaçant fputs par cette fonction :

fwrite("  \n", 3, 1, fichier);


Merci quand même ! :)
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
21 déc. 2013 à 12:23
Tu as ouvert avec "wb", donc il ne faut pas utiliser fputs() mais fwrite() comme tu as trouvé tout seul. Mais si c'est pour ajouter du texte, utilise plutôt "w" pour ouvrir le fichier.
0
D_A_R_K_O_S Messages postés 98 Date d'inscription vendredi 1 février 2013 Statut Membre Dernière intervention 23 juin 2015 7
21 déc. 2013 à 12:52
Ok merci !
0