IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Mettre le contenu d'un fichier dans un tableau de bytes ?


Sujet :

C++

  1. #1
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2002
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2002
    Messages : 165
    Points : 193
    Points
    193
    Par défaut Mettre le contenu d'un fichier dans un tableau de bytes ?
    Bonjour,

    je suis débutant en C++ et je cherche tout simplement à mettre le contenu d'un fichier binaire dans un tableau de bytes

    en gros il y a un tableau de bytes qui doit être égale à la taille du fichier en octets, puis on remplit ce tableau en lisant le fichier octet par octet

    je sais faire ça en java mais en C++ je butte sur plein de problèmes, notamment la définition de la taille du tableau de bytes qui doit être égale à la taille du fichier, et ensuite l'utlisation de ifstream qui me semble confus

    aidez-moi SVP , merci

  2. #2
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 752
    Points : 10 681
    Points
    10 681
    Billets dans le blog
    3
    Par défaut
    Pour la taille du fichier:
    http://c.developpez.com/faq/cpp/?pag...HIERS_filesize
    puis tu alloues la mémoire, et ifstream::read devrait convenir.
    http://c.developpez.com/faq/cpp/?pag...ERS_read_write

  3. #3
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2002
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2002
    Messages : 165
    Points : 193
    Points
    193
    Par défaut
    Salut,

    j'ai compris comment faire pour avoir la taille du fichier et créer un tableau adapté

    mais je n'arrive pas à utiliser ifstream malgré le tutoriel, car je cherche à injecter tous les octets du fichier dans le tableau, en m'inspirant du tutoriel je n'ai pas l'impression que cela fonctionne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    //size est la taille du fichier 
     
    char  *bFile=new  char[size];
     
    //lecture du fichier  et remplissage du tableau
    data.read(reinterpret_cast<char*>(bFile), sizeof(char));
    le problème ici c'est que j'ai l'impression que le tableau est mal rempli ou alors alors rempli qu'à moitié ?

  4. #4
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Avec sizeof(char) tu ne vas lire qu'un caractère. Essaye plutôt sizeof(char) * size.

    Et le reinterpret_cast ne sert à rien, puisque bFile est déjà un char*.

  5. #5
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2002
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2002
    Messages : 165
    Points : 193
    Points
    193
    Par défaut
    Merci

    ça fonctionne 8)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mettre le contenu d'un fichier dans un tableau
    Par Auzingueur dans le forum Débuter
    Réponses: 7
    Dernier message: 16/12/2013, 10h04
  2. Réponses: 3
    Dernier message: 16/11/2012, 01h34
  3. Réponses: 3
    Dernier message: 28/05/2009, 15h27
  4. [Stream] Mettre le contenu d'un File dans un tableau de byte
    Par JohnBlatt dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 25/08/2006, 14h18
  5. Réponses: 14
    Dernier message: 19/11/2005, 18h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo