Bonjour à tous !

Tout est dans le titre ... Non ! Je plaisante mais là je craque ! Ça fait 4 heures que je cherche dans tous les sens (forum, bouqin, etc) et je n'arrive pas à comprendre d'où vient mon maudit problème.

J'ai un fichier XML qui contient des éléments auxquels sont associés des attributs (cf. ci-dessous) et je souhaiterai supprimer un de ces éléments :

Exemple l'id 105 mais je n'y arrive pas et ça me G..... !!!!

Je vous met aussi mon code.

Je vous remercie d'avance à tous pour votre aide.

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
 
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<rooms>
<room id="100" state="available" type="rt1"/>
<room id="101" state="available" type="rt1"/>
<room id="102" state="available" type="rt1"/>
<room id="103" state="available" type="rt1"/>
<room id="104" state="available" type="rt2"/>
<room id="105" state="available" type="rt2"/>
<room id="106" state="available" type="rt2"/>
<room id="107" state="available" type="rt2"/>
<room id="200" state="available" type="rt1"/>
<room id="201" state="available" type="rt1"/>
<room id="202" state="available" type="rt2"/>
<room id="203" state="available" type="rt2"/>
<room id="204" state="available" type="rt3"/>
<room id="205" state="available" type="rt3"/>
<room id="206" state="available" type="rt2"/>
<room id="207" state="available" type="rt3"/>
<room id="300" state="available" type="rt1"/>
<room id="301" state="available" type="rt1"/>
<room id="302" state="available" type="rt2"/>
<room id="303" state="available" type="rt2"/>
<room id="304" state="available" type="rt2"/>
<room id="305" state="available" type="rt2"/>
<room id="400" state="available" type="rt2"/>
<room id="401" state="available" type="rt2"/>
<room id="402" state="available" type="rt2"/>
<room id="403" state="available" type="rt3"/>
<room id="404" state="available" type="rt3"/>
<room id="405" state="available" type="rt3"/>
<room id="406" state="available" type="rt4"/>
<room id="407" state="available" type="rt4"/>
<room id="1000" state="available" type="rt1"/>
</rooms>
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
 
        final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
 
        try {
 
            final DocumentBuilder builder = factory.newDocumentBuilder();		
            final Document document= builder.parse(new File(XmlDoc));
 
            NodeList Element = document.getElementsByTagName("room");
 
            if (Element != null && Element.getLength() > 0) {
 
                for (int i = 0; i < Element.getLength(); i++) {
 
                    Node node = Element.item(i);
                    Element e = (Element) node;
 
                    String id = Element.item(i).getChildNodes().item(0).getNodeValue();
 
 
                    if (id.equals(dataRoom)) {
                        node.getParentNode().removeChild(node);
                     } 
                }
            }
 
            //Sauvegarde du DOM dans un fichier XML
            transformerXml(document, XmlDoc);
 
        } catch (ParserConfigurationException | SAXException | IOException | DOMException e) {
            //Boîte du message d'erreur
            jop1.showMessageDialog(null, "Erreur durant la suppression d'un client dans le fichier XML\n" + e.toString(), "Erreur", JOptionPane.ERROR_MESSAGE);
        }