Ecrire des caractères dans un fichier texte [Résolu]

Signaler
Messages postés
96
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
25 avril 2008
-
Messages postés
96
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
25 avril 2008
-
Bonjour,

Voici mon problème : je souhaiterais écrire des caractères dans un fichier texte.

Je déclare et initialise donc un pointeur de sortie dans mon main (il n'est utlisé que dans mon main), tel que :

FILE *op_file=NULL;

Puis j'ouvre le fameux fichier texte vierge (et qui reste vierge ce qui me rend dinguo) ; au préalable je l'ai enregistré dans la racine C (au même endroit qu'une vidéo que j'utilise dans mon programme et qui s'ouvre très bien)

op_file = fopen("decode_MPEG_header.txt", "wb");

Puis je fais la chose suivante :

fprintf(op_file,"%c\n",TS_raw_header[0]); 

J'ai essayé avec la fonction "fwrite", mais hélas sans succès. En effet mon programme s'exécute : j'ai les bonnes valeurs qui s'affichent dans la console. Il se termine correctement. La console se ferme...mais lorsque je vais chercher mon fichier texte pour l'ouvrir, il est resté vierge !

Quelqu'un aurait une idée pour me sortir de ce pétrin? Car ça va faire une bonne semaine que je reste bloqué sur ce point.

Bonne journée à tous ceux qui passeront par là ;-)      

11 réponses

Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
Attention que ton fichier n'a pas de chemin d'accès, sa création et/ou ouverture sera dépendante de ta currentDirectory.

ciao...
BruNews, MVP VC++
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
5
fopen("decode_MPEG_header.txt", "w");
et penses au "fclose".

TS_raw_header contient quoi ?
Tu as vérifié la validité du pointeur op_file ?
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
Salut

As tu bien mis un fclose(op_file) avant de quitter ton programme?
 
A+
Mon site internet : http://pistol.petesampras.free.fr
Messages postés
96
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
25 avril 2008

j'ai bien mis le fclose a la fin du main.
j'avais déjà essayé avec "w" sans succès

et voici la déclaration de TS_raw_header :
unsigned char TS_raw_header[10];

Je ne comprends pas et j'ai pourtant l'impression de bien faire ...
Messages postés
96
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
25 avril 2008

J'oubliais, j'ai vérifié la validité du pointeur op_file en faisant :

     if(op_file==NULL)
 {                 
        printf("Erreur : Impossible d'ouvrir le fichier spécifié \n");      //test d'ouverture du fichier
        exit(0);
 }
Messages postés
96
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
25 avril 2008

En francais ça donnerait s'il te plait ?
Messages postés
96
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
25 avril 2008

cad qu'il faut que je mette C:\\...etc ???
Messages postés
96
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
25 avril 2008

op_file = fopen("C:\decode_MPEG_header.txt", "w");

ça ne marche toujours pas ...
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
op_file = fopen("C:\\decode_MPEG_header.txt", "w");
et avec ça ?

ciao...
BruNews, MVP VC++
Messages postés
96
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
25 avril 2008

ça marche mais ça ne m'affiche que des "G"... alors que ça devrait m'afficher des 0x47... probablement un problème de "%...", nan ? problème de type quoi..
Messages postés
96
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
25 avril 2008

C'est bon, ça marche impec' !!!

avec  : fprintf(op_file,"%x\n",TS_raw_header[0]);

MERCI BRUNO et à tous les autres!!!

Bonne journée à tous!

et encore merci pour votre éternel soutien (Luthor et Vincent ;-) )
Promis, quand je serai fort, je vous aiderai ;-)

++