Partage
  • Partager sur Facebook
  • Partager sur Twitter

Lecture d'un fichier binaire et mise en mémoire de ce fichier

    16 avril 2008 à 15:05:51

    Bonjour,

    Je lis un fichier binaire, à l'aide de :
    ios_base::binary;
    
       unsigned char *pbuffer[841];
    
       ifstream myFileRef ("ref_bitmap.bmp", ios::in | ios::binary);
       myFileRef.read ((char *)pbuffer, 840);//840
       *(pbuffer+840)='\0';
    


    Jusque là, pas de problème, mais lorsque je lit un second fichier binaire (qui est un Bitmap de 1 250ko), là, mon buffer arrete la lecture au premier caractrère ascii spécial, voici mon code :
    unsigned char *buffer;
       buffer = (unsigned char *) malloc(1277539);
    
       ifstream myFile ("Bitmap.bmp", ios::in | ios::binary);
       myFile.read ((char *)buffer,1277538);
    


    Et je dois me servir de la totalité de ce deuxième fichier, puisque que je dois effectuer une recherche de pbuffer dans buffer (en gros, je dois rechercher si "bitmap.bmp contient ref_bitmap.bmp" mais par l'intermédiaire du code source)

    Merci de votre aide :D
    • Partager sur Facebook
    • Partager sur Twitter
      16 avril 2008 à 15:13:58

      Tu n'essaierais pas d'afficher ton buffer avec un printf/cout par hasard?
      • Partager sur Facebook
      • Partager sur Twitter
      C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.
        16 avril 2008 à 15:18:15

        pourquoi utiliser malloc() ?
        • Partager sur Facebook
        • Partager sur Twitter
          16 avril 2008 à 17:53:25

          Pk sinon j'ai une erreur de débordement de pile pour le malloc ;)
          Et pour l'affichage, je l'affiche avec un ShowMessage(); (je suis sous c++ builder);
          • Partager sur Facebook
          • Partager sur Twitter
            16 avril 2008 à 18:04:14

            Qui attend un chaine 0-terminées, c'est ça ...?
            Un buffer d'octets ne peut pas être affiché avec des fonctions de manipulation de chaines.
            • Partager sur Facebook
            • Partager sur Twitter
            C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.

            Lecture d'un fichier binaire et mise en mémoire de ce fichier

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown