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 :

Enregistrement d'une structure dans un fichier


Sujet :

C++

  1. #21
    Membre confirmé
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Avril 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2007
    Messages : 87
    Par défaut
    Merci beaucoup, tout fonctionne.

    Cependant, j'ai encore un problème, pour récupérer ce qu'il y a dans le fichier.

    En effet, je stocke les informations sous cette forme dans le fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    std::ostream& operator <<(std::ostream &os, const ConfigMonde &cm)
    {
        os << cm.m_monde << ":" << cm.m_vitesseMonde << ":" << cm.m_vitesseUnite << std::endl;
     
        return os;
    }
    J'ai donc cela par exemple :

    16:1:1
    2:1.1:1.1

    Pour les récupérer j'ai fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    std::istream& operator >>(std::istream &is, ConfigMonde &cm)
    {
        is >> cm.m_monde; //que mettre ici ?
     
        return is;
    }
    Mais je ne vois pas comment récupérer sous le format x : x : x, afin de stocker les valeurs dans les variables m_monde, etc.

    Pour finir, j'ai fait cette fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    void TribalTime::getListeMondes()
    {
        std::ifstream fichierMondes("C:/Users/Simon/Desktop/tribaltime/tribaltime/data/mondes.txt");
        if(fichierMondes)
        {
            std::string donnees;
     
    //        fichierMondes >> donnees;
    //        std::cout << donnees;
     
            while(std::getline(fichierMondes, donnees))
                std::cout << donnees << std::endl;
        }
    }
    Je ne parviens pas à lire l'entièreté du fichier avec la méthode que j'ai mise en commentaire, j'ai donc utilisé getline, mais on ne peut utiliser que string.

    Merci d'avance !

  2. #22
    Expert éminent

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 202
    Par défaut
    Il y a une fonction ignore dans les std::istream, regarde sa définition sur cppreference.com (en anglais)

Discussions similaires

  1. Enregistrer une structure dans un fichier txt
    Par SLF153 dans le forum MATLAB
    Réponses: 4
    Dernier message: 22/03/2011, 13h24
  2. enregistrer une structure dans un fichier
    Par Namson dans le forum C
    Réponses: 1
    Dernier message: 21/02/2009, 23h31
  3. Réponses: 17
    Dernier message: 09/03/2007, 18h13
  4. stocker une structure dans un fichier ini?
    Par Mickey.jet dans le forum C
    Réponses: 6
    Dernier message: 13/09/2006, 16h57
  5. copier une structure dans un fichier
    Par brute dans le forum MFC
    Réponses: 18
    Dernier message: 10/03/2006, 14h30

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