Bonjour à tous,
Voilà mon souci : j'ai un fichier XML contenant des utilisateurs dans lequel je vais chercher diverses infos sur eux. Il est de cette forme :
Et le soucis arrive lors de la suppression, j'arrive bien à supprimer les fils d'un noeud, mais le noeud en lui-même reste présent.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <?xml version="1.0" encoding="utf-8"?> <liste> <utilisateur> <Nom>essai</Nom> <Statut>Modérateur</Statut> <Service>ServiceEssai</Service> </utilisateur> <utilisateur> <Nom>test</Nom> <Statut>Administrateur</Statut> <Service>ServiceTest</Service> </utilisateur> .... </liste>
Par exemple si je supprime l'utilisateur 'test', je me retrouve avec :
En réalité la méthode RemoveAll me supprime les noeuds fils mais laisse le père...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?xml version="1.0" encoding="utf-8"?> <liste> <utilisateur> <Nom>essai</Nom> <Statut>Modérateur</Statut> <Service>ServiceEssai</Service> </utilisateur> <utilisateur> </utilisateur> .... </liste>
Voici le code behind :
Auriez-vous une idée pour retirer le "<utilisateur></utilisateur>" SVP ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Dim docXML As XmlDocument = New XmlDocument docXML.Load("le_fichier.xml") Dim xpath As String = "le_xpath" Dim xmlElt As XmlNode = docXML.SelectSingleNode(xpath) If xmlElt IsNot Nothing Then xmlElt.ParentNode.RemoveAll() docXML.Save("le_fichier.xml") End If
Merci par avance.
Bonne soirée.
Partager