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

VB.NET Discussion :

ajouter un nouvel element dans fichier XML


Sujet :

VB.NET

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2003
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 29
    Points : 20
    Points
    20
    Par défaut ajouter un nouvel element dans fichier XML
    Bonjour,

    Alors voila je narrive pas a ajouter plus d`un noeud dans un fichier xml qui s´execute dans une boucle.

    Un test bete que j´ai essaye !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    For i = 1 To 1000
          WriteXmlDoc()
    Next
    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
     
    Private Sub WriteXmlDoc(ByRef i As Integer)
     
            Dim rootNode As XmlElement
            Dim NodeDatabase as XmlElement
     
            Try
                rootNode = XmlDoc.CreateElement("Clients")
                XmlDoc.LoadXml("<Diff></Diff>")
     
                'head
                NodeDatabase = XmlDoc.CreateElement("Software")
     
                NodeDatabase.InnerText = CStr(i)
     
                'attach all the child nodes to the root node
                rootNode.AppendChild(NodeDatabase)
     
                XmlDoc.DocumentElement.AppendChild(rootNode)
                XmlDoc.Save("Newsite.XML")
     
            Catch ex As Exception
                LogFactory.getInstance().logError(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "Cannot create XML document", ex)
            End Try
     
        End Sub

    Le truc le plus bete du monde jarrive pas a ajouter de noeuds,il boucle 1000 fois et me reecrit 1000 fois 1 noeud

    Quelle methode me permet de rajouter un ou plusieurs noeuds
    Il existe pas une methode append comme pour les fichiers ??
    Merci de votre aide,je deviens fou
    Brice

  2. #2
    Membre habitué Avatar de akecoocoo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2004
    Messages : 78
    Points : 146
    Points
    146
    Par défaut
    Ta fonction XmlDoc charge un document référencé comme un membre d'une classe, l'initialise par "<Diff></Diff>", ajoute un noeud à l'élement racine, puis l'enregistre.

    Tu peux répéter cette action autant de fois que tu veux tant que tu recharges le document via la ligne "XmlDoc.LoadXml("<Diff></Diff>")", aucun noeud ne s'ajoutera !

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    459
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 459
    Points : 553
    Points
    553
    Par défaut
    Je ne comprends pas : tu ne recharges jamais le fichier modifié ? Tu recommences le même traitement à chaque fois ?

  4. #4
    Membre à l'essai
    Inscrit en
    Juillet 2003
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 29
    Points : 20
    Points
    20
    Par défaut
    si je met pas cet insctruction je me retrouve avec un joli :

    Cannot create XML document
    System.NullReferenceException: Object reference not set to an instance of an object.

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    459
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 459
    Points : 553
    Points
    553
    Par défaut
    Utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    XmlDocument.Load(String fileName)
    pour recharger ton fichier.

    Mais en fait, tu dois plutôt dans ton cas
    - charger le fichier
    - faire ta boucle pour ajout tes 1 000 noeuds
    - sauvegarder ton fichier

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2003
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 29
    Points : 20
    Points
    20
    Par défaut
    Oui c bon ca marche.
    Quel boulet
    Bonne soirée
    Brice

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

Discussions similaires

  1. Ajouter un root element à un fichier XML via Java
    Par filor dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 09/09/2009, 14h57
  2. Compter Elements dans fichier XML
    Par Flopp dans le forum C#
    Réponses: 4
    Dernier message: 23/04/2009, 16h25
  3. Ajout d'un element dans un fichier XML
    Par vacknov dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 02/08/2007, 10h26
  4. Réponses: 4
    Dernier message: 25/04/2007, 11h29
  5. [JDOM] Ajout élément dans fichier XML
    Par delinot dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 18/07/2005, 11h10

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