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 :

[Lecture binaire] Problème de conversion


Sujet :

C++

  1. #1
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut [Lecture binaire] Problème de conversion
    Bonjour à tous,
    j'ai un fichier binaire écrit en UInt16, et je dois mettre ce fichier dans un vector de double. Pour l'instant, je n'ai rien trouvé de mieux que d'importer dans un vector de UInt16, puis convertir après en double...
    Je suis quand même un sceptique sur ma méthode. N'y a t-il y pas une meilleure solution ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    std::ifstream fichier(m_nom_film.c_str(), std::ios_base::in | std::ios_base::binary);
     
    std::vector<vigra::UInt16> vect_temp(m_taille_image);
    fichier.seekg(numero_image * m_taille_image * sizeof(vigra::UInt16), std::ios_base::beg);
    fichier.read(reinterpret_cast<char*>(&vect_temp[0]), m_taille_image * sizeof(vigra::UInt16));
     
    std::vector<double> vect(m_taille_image);
    std::copy(vect_temp.begin(), vect_temp.end(), vect.begin() );

  2. #2
    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 : 39
    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
    Un chouïa mieux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    std::vector<double> vect(vect_temp.begin(), vect_temp.end());
    Sinon tu peux toujours lire un par un tes nombres afin de pouvoir les placer directement dans ton vecteur de double.

  3. #3
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    OK Merci Laurent !

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

Discussions similaires

  1. Problème lecture binaire QDataStream
    Par totem dans le forum Qt
    Réponses: 3
    Dernier message: 02/06/2009, 22h17
  2. - [CAST ou CONVERT] Problème de conversion de date
    Par Boublou dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 06/07/2004, 14h31
  3. Problème de conversion 3DS->.X
    Par JBernn dans le forum DirectX
    Réponses: 5
    Dernier message: 08/04/2004, 19h08
  4. Problème de conversion unicode
    Par djmalo dans le forum C
    Réponses: 5
    Dernier message: 09/03/2004, 11h48
  5. Réponses: 11
    Dernier message: 02/09/2003, 14h20

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