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 :

Création et ouverture d'un document xml [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 151
    Par défaut Création et ouverture d'un document xml
    Bonjour

    Je n'ai jamais étudié le xml, mais j'essais d'en créer un pour m'en servir dans une application.

    En cherchant sur internet, j'ai finis par programmer ce code (c'est un code de test):
    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
    private void creationDocXML()
    {
           XmlTextWriter xml = new XmlTextWriter("\\doc.xml", System.Text.Encoding.UTF8);
     
          xml.Formatting = Formatting.Indented;
     
          xml.WriteStartElement("Codes Articles");
          xml.WriteElementString("A0", "Codes Articles");
          xml.WriteElementString("A1", "A7DHRE8U");
          xml.WriteElementString("A2", "BED70EJD");
          xml.WriteEndElement();
     
          xml.WriteStartElement("Quantite");
          xml.WriteElementString("B0", "Qte");
          xml.WriteElementString("B1", "22");
          xml.WriteElementString("B2", "34");
          xml.WriteEndElement();
     
          xml.Flush(); 
          xml.Close(); 
    }
    J'obtiens donc le document xml suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <Codes Articles>
       <A0>Codes Articles</A0>
       <A1>A7DHRE8U</A1>
       <A2>BED70EJD</A2>
    </Codes Articles>
    <Quantite>
       <B0>Qte</B0>
       <B1>22</B1>
       <B2>34</B2>
    </Quantite>
    Ce qui me conviens.

    Mais quand j’essaie de l'ouvrir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    XmlDocument document = new XmlDocument(); 
    document.Load(@"\doc.xml");
    Je recois un
    XmlException " '>' est un jeton inattendu. Le jeton attendu est '='. Ligne 1, position 16. "
    Pourquoi cette erreur ? Je ne veux pas mettre d'attribut dans mes balises.

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2012
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2012
    Messages : 179
    Par défaut
    Ca doit être un problème de syntaxe.

    Si je dis pas de bétises, tu ne peux pas avoir d'espace dans le nom de tes noeuds et ils ne doivent pas commencer par un chiffre ou un caractère de ponctuation.
    Donc il ne doit pas aimer le noeud Codes articles par exemple. Teste avec Codesarticles.

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 151
    Par défaut
    C'est pas bête, merci

    En effet maintenant ça passe, mais j'ai une autre erreur:
    Donc maintenant mon doc xml contient:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <CodesArticles>
       <A0>Codes Articles</A0>
       <A1>A7DHRE8U</A1>
       <A2>BED70EJD</A2>
    </CodesArticles>
    <Quantite>
       <B0>Qte</B0>
       <B1>22</B1>
       <B2>34</B2>
    </Quantite>
    Et il me dit:
    XmlException " Il existe plusieurs éléments racine. Ligne 6, position 2. "

  4. #4
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2011
    Messages : 610
    Par défaut
    Hello,

    Il me semble qu'un fichier XML devrait être de la sorte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <Racine>
    <CodesArticles>
       <A0>Codes Articles</A0>
       <A1>A7DHRE8U</A1>
       <A2>BED70EJD</A2>
    </CodesArticles>
    <Quantite>
       <B0>Qte</B0>
       <B1>22</B1>
       <B2>34</B2>
    </Quantite>
    </Racine>
    Seul un élément racine doit être présent.

  5. #5
    Membre confirmé
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2012
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2012
    Messages : 179
    Par défaut
    Tout à fait +1.

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 151
    Par défaut
    Citation Envoyé par FrameBreak Voir le message
    Hello,

    Il me semble qu'un fichier XML devrait être de la sorte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <Racine>
    <CodesArticles>
       <A0>Codes Articles</A0>
       <A1>A7DHRE8U</A1>
       <A2>BED70EJD</A2>
    </CodesArticles>
    <Quantite>
       <B0>Qte</B0>
       <B1>22</B1>
       <B2>34</B2>
    </Quantite>
    </Racine>
    Seul un élément racine doit être présent.
    C'est aussi ce que j'ai cru comprendre en fouillant un peu. Mais comment je crée cet élément racine ? Parce que ça par contre j'ai pas trouvé.
    Ah mais si, j'suis bête. J'viens de trouver en écrivant là
    Aller, la fatigue du lundi matin, c'est pas grave

    Voilà mon nouveau code pour ceux qui aurait le même souci un jour:
    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
    private void creationDocXML()
    {
           XmlTextWriter xml = new XmlTextWriter("\\doc.xml", System.Text.Encoding.UTF8);
     
         xml.Formatting = Formatting.Indented;
     
         xml.WriteStartElement("Appli");
         xml.WriteStartElement("CodesArticles");
         xml.WriteElementString("A0", "Codes Articles");
         xml.WriteElementString("A1", "A7DHRE8U");
         xml.WriteElementString("A2", "BED70EJD");
         xml.WriteEndElement();
     
         xml.WriteStartElement("Quantite");
         xml.WriteElementString("B0", "Qte");
         xml.WriteElementString("B1", "22");
         xml.WriteElementString("B2", "34");
         xml.WriteEndElement();
         xml.WriteEndElement();
     
         xml.Flush(); 
         xml.Close(); 
    }
    Et le document xml ainsi généré:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <Appli>
      <CodesArticles>
        <A0>Codes Articles</A0>
        <A1>A7DHRE8U</A1>
        <A2>BED70EJD</A2>
      </CodesArticles>
      <Quantite>
        <B0>Qte</B0>
        <B1>22</B1>
        <B2>34</B2>
      </Quantite>
    </Appli>
    Merci !

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/04/2012, 19h08
  2. [D7 XML] Création dynamique Document XML
    Par PhD13 dans le forum Langage
    Réponses: 4
    Dernier message: 03/12/2007, 13h56
  3. Réponses: 2
    Dernier message: 03/05/2007, 09h38
  4. Validation d'un document XML avant sa création??
    Par mardona dans le forum Format d'échange (XML, JSON...)
    Réponses: 5
    Dernier message: 27/01/2006, 15h33
  5. [DOM XML][XSLT] Création d'un document XML avec PHP
    Par ToxiZz dans le forum Bibliothèques et frameworks
    Réponses: 21
    Dernier message: 16/01/2006, 17h44

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