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

Discussion :

[debutant] ecriture d'un fichier XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 47
    Par défaut [debutant] ecriture d'un fichier XML
    bonjour a tous,

    voila mon soucis : je cherche à écrire un fichier XML tout simple. J'ai trouvé pas mal de tutos sur le net et j'ai donc fait le code suivant :

    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
    31
    32
    33
    34
    35
     
    #include "qdom.h"
    #include <iostream>
    #include <QDomDocument>
     
     
    	int	main(int, char **)
    	{
    	  QDomImplementation impl = QDomDocument().implementation();
    	  // document with document type
    	  QString name = "Projet";
    	  QString publicId = "TestXMLQt";
    	  QString systemId = "WTF";
    	  QDomDocument doc(impl.createDocumentType(name,publicId,systemId));
     
    	   // root node
    	  QDomElement menuNode = doc.createElement("Menu");
    	  menuNode.setAttribute("nom","Menu1");
    	  doc.appendChild(menuNode);
     
    	  // appearance
    	  QDomElement elementNode = doc.createElement("element");
     
    	  QDomElement nomNode = doc.createElement("nom");
    	  nomNode.appendChild(doc.createTextNode("Classeur1.xls"));
     
    	   QDomElement pathNode = doc.createElement("path");
    	   pathNode.appendChild(doc.createTextNode("C:\\users\\clem\\Documents\\classeur1.xls"));
     
    	  elementNode.appendChild(nomNode);
    	  elementNode.appendChild(pathNode);
    	  menuNode.appendChild(elementNode);
     
    	  doc.toString();
    	}

    A la compilation, j'ai beaucoup d'erreurs du type :
    release/main.o(.text+0xaa4):main.cpp: undefined reference to `_imp___ZN18QDomImplementationD1Ev'
    release/main.o(.text+0xb2d):main.cpp: undefined reference to `_imp___ZN8QDomNodeD2Ev'
    release/main.o(.text+0xc90):main.cpp: undefined reference to `_imp___ZN8QDomNodeD2Ev'


    Je ne vois pas d'ou cela provient, donc merci d'avance pour vos suggestions !!

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Bonjour.
    1-
    2- il faut que tu link avec libQtXml4.a ou libQtXml4.lib

  3. #3
    Membre Expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Par défaut
    Salut,

    Ajoute "QT += xml" à ton fichier pro; ça s'occupe tout seul d'ajouter les en-têtes et lib nécessaires.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 47
    Par défaut
    Oups désolé pour les balises code j'y penserait !
    Merci IrmatDen sa marche parfaitement maintenant ça compile sans soucis. Après c'est mon programme qui n'est pas bon ça ne crée pas le fichier !
    Quel est le soucis ?

  5. #5
    Membre éclairé Avatar de Watier_53
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    469
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 469
    Par défaut
    tu n'as pas créer de QFile tu peux pas écrire sur le disque sur le disque

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    QFile file(url);//url est le chemin et nom de ton fichier xml
    file.open(QIODevice::WriteOnly);
    QTextStream ts(&file);
    ts << doc.toString();
    file.close();
    et le tour est joué !

Discussions similaires

  1. Ecriture dans un fichier XML de beaucoup beaucoup de données
    Par sebastien2222 dans le forum Persistance des données
    Réponses: 8
    Dernier message: 10/08/2006, 09h39
  2. [C#]Lecture et Ecriture d'un fichier .xml
    Par debug dans le forum Windows Forms
    Réponses: 5
    Dernier message: 07/01/2006, 12h41
  3. [C#] Probleme d'écriture dans un fichier XML
    Par Joad dans le forum ASP.NET
    Réponses: 5
    Dernier message: 02/05/2005, 16h19
  4. [DOM] Ecriture d'un fichier XML en java
    Par fidififouille dans le forum Format d'échange (XML, JSON...)
    Réponses: 11
    Dernier message: 12/05/2004, 09h32
  5. [VB.NET] Ecriture d'un fichier XML
    Par Le-Cortex dans le forum ASP.NET
    Réponses: 13
    Dernier message: 28/04/2004, 12h57

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