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 :

[C++.net]Problème d'écriture avec un Fichier XML


Sujet :

MFC

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut [C++.net]Problème d'écriture avec un Fichier XML
    Bonjour,
    J'ai un problème lors de l'écriture sur le 2nd élément de mon fichier XML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    An unhandled exception of type 'System.InvalidOperationException' occurred in system.xml.dll
     
    Additional information: Le jeton StartElement dans l'état Epilog générera un document XML non valide.
    voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    if(boiteXMLexport->ShowDialog() == DialogResult::OK)
    			 {
    				 XmlTextWriter *wr = new XmlTextWriter(boiteXMLexport->FileName,Encoding::UTF8);
    				 wr->WriteStartDocument();
     
    			//for(int i=0;i<nb;i++)
    				 while(i<nb)
    			 {
    				 MessageBox::Show(Convert::ToString(i));
    				 MessageBox::Show((__try_cast<UVEdit::vignette * >(element->get_Item(i))->getnom()));
    				 wr->WriteStartElement(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getnom());
    				// wr->WriteAttributeString("nom",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getnom()));
    				 wr->WriteAttributeString("CordX",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getCordX()).ToString());
    				 wr->WriteAttributeString("CordY",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getCordY()).ToString());
    				 wr->WriteAttributeString("DimHei",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getDimHei()).ToString());
    				 wr->WriteAttributeString("DimWid",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getDimWid()).ToString());
    				 wr->WriteAttributeString("FramedSkin",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getFramedS()).ToString());
    				 wr->WriteAttributeString("Ftop",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getFtop()).ToString());
    				 wr->WriteAttributeString("Fleft",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getFleft()).ToString());
    				 wr->WriteAttributeString("Frig",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getFrig()).ToString());
    				 wr->WriteAttributeString("Fbot",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getFbot()).ToString());
    				 wr->WriteAttributeString("UVmiror",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getUVMiror()).ToString());
    				 wr->WriteAttributeString("UVflip",(__try_cast<UVEdit::vignette * >(element->get_Item(i))->getUVFlip()).ToString());
    				 wr->WriteEndElement();
    				 i++;
     
    			 }
    			 wr->WriteEndDocument();
    			 wr->Close();
    			 }

  2. #2
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    il semblerait que tu veuilles sérialiser les attributs de ta classe vignette.

    Pourquoi ne pas utiliser XmlSerializer ? Je trouve son fonctionnement très simple.

    Il y a un exemple d'utilisation à cette adresse http://nico-pyright.developpez.com/t...rialisationXml

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    ok je vais voir ça

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    c'était un ligne mal placée...

    Additional information: Le jeton StartElement dans l'état Epilog générera un document XML non valide.


    cette erreur survient lors que la ligne "WriteEndElement" était mal placé

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

Discussions similaires

  1. Module NetBeans en java : problème pour action avec un fichier .xml
    Par sebas64480 dans le forum NetBeans Platform
    Réponses: 0
    Dernier message: 23/04/2012, 16h44
  2. [XML] Problème d'encodage avec un fichier XML
    Par anto2b dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 04/12/2011, 13h58
  3. Problème d'écriture d'un fichier XML
    Par julie_lab dans le forum Format d'échange (XML, JSON...)
    Réponses: 6
    Dernier message: 02/11/2010, 01h52
  4. [C#] PRoblème d'écriture d'un fichier avec accent
    Par shinchan dans le forum Windows Forms
    Réponses: 2
    Dernier message: 11/04/2006, 09h13
  5. Problème d'écriture dans un fichier xml
    Par vanoou dans le forum C++Builder
    Réponses: 1
    Dernier message: 13/07/2005, 02h28

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