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

MFC Discussion :

Questions pour serialise


Sujet :

MFC

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    907
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 907
    Par défaut Questions pour serialise
    Bonjour,

    Je voudrais savoir comment orienter la sérialisation d'un objet dans un fichier.

    D'autre part l'instruction ci-dessous, ne fonctionne pas, auriez vous une autre solution :

    unsigned __int64 var1
    ar << var1

    Merci,
    Christophe,

  2. #2
    Membre confirmé
    Inscrit en
    Juin 2004
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 79
    Par défaut
    Salut,

    tu trouveras peut-etre la solution à tes questions ici :
    http://c.developpez.com/faq/vc/?page...HowToSerialize

    Pour l'écriture et la lecture, une manière possible de sérialiser:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    //Création d'un objet CFile
    CFile File;   
     
    //ouverture du fichier en mode écriture
    if(File.Open("MyArchive.arc", CFile::modeCreate | CFile::modeWrite ))
    {
        //Création d'un objet CArchive associé au CFile 
        CArchive ar( &File, CArchive::store);
     
       //serialisation de l'objet
        m_Object.Serialize(ar);
    }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    //Création d'un objet CFile
    CFile File;   
     
    //ouverture du fichier en mode lecture
    if(File.Open("MyArchive.arc", CFile::modeRead ))
    {      
       //Création d'un objet CArchive associé au CFile      
       CArchive ar( &File, CArchive::load);
     
       //serialisation de l'objet
      m_Object.Serialize(ar);
        }
    où m_object est un objet de CClass (dérivée de CObject)
    et la méthode Serialize de CClass donnerait qqch du genre:

    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 CClass::Serialize(CArchive &ar)
    {
     
            CObject::Serialize(ar);
     
    	if (ar.IsStoring())
    	{
    		ar << var_membre1 << var_membre2 << var_membre3;
    	}
    	else
    	{
    		ar >> var_membre1 >> var_membre2 >> var_membre3;
    	}
    }
    dans le cas où tes variables membres sont primitives et donc où tu peux utiliser les >> (lecture) et << (écriture).
    Sinon, si les << et >> ne s'appliquent pas, essaye de voir les méthodes Write et Read de CArchive...

Discussions similaires

  1. BTS Info de Gestion passé aujourd'hui question pour SQL
    Par red210 dans le forum Décisions SGBD
    Réponses: 11
    Dernier message: 29/05/2005, 14h48
  2. [bochs] Question pour un kernel de base...
    Par hudson dans le forum Assembleur
    Réponses: 2
    Dernier message: 24/02/2005, 12h07
  3. Petite question pour Backup
    Par chicken92000 dans le forum Administration
    Réponses: 2
    Dernier message: 16/09/2004, 16h10
  4. [MIB] Questions pour construire une mib
    Par fadoua dans le forum Développement
    Réponses: 4
    Dernier message: 11/03/2004, 10h47

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