bonjour,
j'espere ne pas me tromper de forum, j'ai hésité avec le forum XML mais c'est plus une question sur la fonction à utiliser.
J'ai une structure xml de ce genre:
Je voudrais insérer un noeud qui se placerait entre A et ses enfants; comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <A> <B> </B> <C> </C> </A>
Je ne travaille pas sur un fichier xml "physique", mais sur du code xml stoqué dans un string.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <A> <NEW> <B> </B> <C> </C> </NEW> </A>
Voici ce que j'ai fais pour l'instant:
Le problème est que celà rajoute le nouveau noeud apres et pas entre, et je ne vois aucunes méthode pour ajouter un noeud entre 2... quelqu'un a une
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 object missing = System.Reflection.Missing.Value; StringReader sr; StringWriter sw= new StringWriter(); XmlTextWriter xw; XmlDocument xmlDoc; XmlElement elem; sr=new StringReader(xml); //xml est un string qui contient le code xml xmlDoc = new XmlDocument(); xmlDoc.Load(sr); XmlNodeList nodeLst=xmlDoc.GetElementsByTagName("A"); foreach(XmlNode node in nodeLst) { elem = xmlDoc.CreateElement("NEW"); node.InsertAfter(elem, node.FirstChild); xw = new XmlTextWriter(sw); xmlDoc.WriteTo(xw); MessageBox.Show(sw.ToString()); }?
Merci,
Frenchy
Partager