begin process at 2012 02 12 12:51:28
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Fichier / Disque

 > 

Lecture fichier binaire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Lecture fichier binaire

dimanche 17 avril 2005 à 19:20:51 | Lecture fichier binaire

benus

Bonjour;
Je travaille sur les fichiers en ce moment et j'aurai aimé savoir aprés la lecture d'un fichier avec :
FILE* file = fopen("toto.bin", "rb");
fread(&toto, sizeof(MyStruct), 1, file);

comment on faisait pour afficher le contenu du fichier
J'ai essayé avec :

cout <<  toto  << endl;

mais il me retourne une erreure, y a t-il une fonction spéciale?

dimanche 17 avril 2005 à 19:33:00 | Re : Lecture fichier binaire

Gendal67

FILE* fp;
if((fp = fopen("toto.bin", "rb")) == NULL) return false; // par exemple

char szBuffer[2048];

while(fgets(szBuffer, sizeof(szBuffer), fp))
  printf("%s", szBuffer);

fclose(fp);


Je n'ai pas testé (je viens de coder ça direct) mais ça devrait marcher sans aucun problême
J'espère avoir pu t'aider!

Bonne soirée à tous !

Gendal67, Dev-C++ 4.9.9.1, J'adore cppfrance!! :-))
dimanche 17 avril 2005 à 19:48:51 | Re : Lecture fichier binaire

benus

Je viens d'essayer et ca n'a pas résolu mon pb ca veut donc peut etre dire que c'est l'ecriture ds le fichier qui ne fonctionne pas.
Voila le code d'insertion (si qq'un a une idee je suis preneur) :

     int n;
     short numtoto;
     short tempFour;
     char responsable[21];
     float tempsCuissonTotal;
     float tempsCuissonRealise;

        struct MyStruct
  {
     short *numtoto;
     short *tempFour;
     char *responsable[21];
     float *tempsCuissonTotal;
     float *tempsCuissonRealise;
  };

  FILE * fp;
  fp = fopen ("toto.dat", "wb"); //création et/ou ouverture

        numtoto = 1;
        cout << "Temperature :";
        cin >> temptoto;
        cout << "Responsable :";
        cin >> responsable;
        cout << "tempsCuissonTotal :";
        cin >> tempsCuissonTotal;
        cout << "tempsCuissonRealise :";
        cin >> tempsCuissonRealise;

        MyStruct toto;
       
  fwrite(&toto, sizeof(MyStruct), 1, fp);
  fclose (fp) ; // fermeture

dimanche 17 avril 2005 à 20:02:25 | Re : Lecture fichier binaire

Jarod1980

Salut,

Je crois que le fichier que tu veux lire contient uniquement des doubles ou des intergers.

Donc pour le fichier essai de faire comme Gendal67 mais au lieu de printf("%s", szBuffer); ecris plutôt:
printf("%lf", szBuffer);
et double szBuffer[2048];
essai au sinon printf("%c", szBuffer); et: char szBuffer[2048];



Jarod_Delaware

dimanche 17 avril 2005 à 21:05:24 | Re : Lecture fichier binaire

benus

Non il y a aussi des char.

Ma structure est-elle bien passée ds mon fichier?
lundi 18 avril 2005 à 09:59:50 | Re : Lecture fichier binaire

Gendal67

benus, non....ta structure n'est pas bien passée! je te corrige tout ça :

        struct MyStruct
  {
     short *numtoto;
     short *tempFour;
     char *responsable[21]; // pas de pointeur ici si tu mets[21];
     float *tempsCuissonTotal;
     float *tempsCuissonRealise;
  };

FILE * fp;
  fp = fopen ("toto.dat", "wb"); //création et/ou ouverture

       MyStruct toto; // y faut le déclarer ici


        numtoto = 1;
        cout << "Temperature :";
        cin >> &toto.temptoto; // il faut spécifier que c de lobjet toto + passage par référence
        cout << "Responsable :";
        cin >> toto.responsable; // pas de référence car c un char*
        cout << "tempsCuissonTotal :";
        cin >> &toto.tempsCuissonTotal;
        cout << "tempsCuissonRealise :";
        cin >> &toto.tempsCuissonRealise;
        
  fwrite(&toto, sizeof(MyStruct), 1, fp);
  fclose (fp) ; // fermeture



Le passage par référence se fait pour les nombres (et bien qur d'autres choses aussi) pour que l'on puisse vraiment modifier la valeur de ce nombre par la fonction appellante (ici, cin)

J'espère avoir pu t'aider

Gendal67, Dev-C++ 4.9.9.1, J'adore cppfrance!! :-))
lundi 18 avril 2005 à 12:23:04 | Re : Lecture fichier binaire

benus

Merci ca me parait deja plus abouti )
Ms il me retourne cette erreur :

[C++ Erreur] Unit1.cpp(31): E2015 Ambiguïté entre '_STL::basic_istream<char,_STL::char_traits<char> >::operator >>(bool &)' et '_STL::basic_istream<char,_STL::char_traits<char> >::operator >>(void * &)'

la ligne correspondante est celle ci :

cin >> &toto.temptoto;



J'ai fait qq modifs ms rien a faire
lundi 18 avril 2005 à 17:54:36 | Re : Lecture fichier binaire

benus

Réponse acceptée !
merci a tous j'ai enfin trouvé d'ou ca vennait )


Cette discussion est classée dans : fichier, lecture, binaire, file, toto


Répondre à ce message

Sujets en rapport avec ce message

Lecture de fichier binaire structuré [ par nico20000 ] Bonjour,j'ai besoin de lire dans un fichier binaire dont l'entête ressemble à ceci: (traduite en hexa)Properties gc90063 num FTPLocal le 17/11/2003Je Fonction de lecture de fichier [ par bastet1978 ] Bonjour, je suis nouveaux en c, et je veux utiliser une fonction pour ouvrir mes fichiers (eviter a chaque foix de tester si ouverture ok ... etc) Voi lire et ecrire en meme temps dans un fichier avec les fstream [ par Daimadoshi ] slt tlm, voila j'i un petit probleme : je voudrai pouvoir faire des acces en lecture et en ecriture sur un fichier mais je n'y parviens pas voici mon Lecture d'un fichier et affichage de balises [ par SpiritAnghell ] Bonjour;Le programme suivant est censé extraire les balises d'un fichier xml et les afficher une par une:#include #include #include #include #include lecture ecriture dans un fichier binaire [ par bbear ] j'ai 2 tableaux : un de unsigned int et un de char "string"unsigned int tabint[]={ xxx,xxx,xxx...};char *tabnom[]={ "nom1","nom2","nom3"...};je voudra Lecture de fichier texte [ par vba_blitz ] Bonjour, avec le code ci dessous, je recupere les donnees d'un fichier comprenant 2 colonnes. Mais ce code ne recupere pas la premiere ligne et recupe [C++] Lecture et écriture binaire [ par pop70 ] Bonjour, voici mon problème : J'ai des objet que j'aimerais sauvegarder (j'ai simplifié mon code en utilisant un seul objet string) via une écriture problème lecture fichier de grande taille [ par africanwinners ] j'ai concu ce code pour lire le contenu d'un fichier et le mettre dans un tableau à 2 dimensions: ca marche pour un fichier de petite taille:et dès qu converteur audio (wav) en binaire [ par polobou ] [b]Bonjour[/b][^^happy10] j'ai besoin d'un logiciel qui peut m'aider a converter un "fichier.wav" au code binaire dans un autre "fichier.bin". [b]Merc Lecture/ Ecriture de valeur à artir d'un fichier texte [ par twity_osa ] Bonjour Je suis un débutant en C et j'ai un projet qui a pour objet la compression d'image...donc je doit faire stocker l'image (les valeurs des pixe


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,905 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales