Cliquez ici.
Accueil
 chercher             Plan du site             Info (English version) 
L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.Les listes de discussions XMLfr sont à votre disposition pour réagir sur nos articles ou simplement poser une question.Si vous ètes passionnée(e) par XML, pourquoi ne pas en faire votre métier ?XMLfr n'est heureusement pas le seul site où l'on parle de XML. Découvrez les autres grâce à XMLfr et à l'ODP.Les partenaires grâce auxquels XMLfr peut se développer.Pour tout savoir sur XMLfr.XMLfr sans fil, c'est possible !Pour ceux qui veulent vraiment en savoir plus sur XML.L'index du site.
 Commentaires et questions non techniques.Commentaires et questions techniques.

 
Cliquez ici.

xml tech : Technologies XML

[xml-tech] creer une balise en java a un endroit precis

[xml-tech] creer une balise en java a un endroit precis

Auteur: <ziad.elkhatib@mpsa.com>
Date: 20/03/2006 - 16:56
X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003

Bonsoir tout le monde,

J'ai document xml avec par exemple:
<test>
      <test_1/>
      <test_2/>
      <test_3/>
      <test_4/>
      <test_5/>
<test>

Je voudrais supprimer la balise test_3 et creer une balise test_A à la
place. Ca c'est bon, j'arrive a le faire :-) Mon soucis c'est que la balise
test_A vient se placer a la fin:
<test>
      <test_1/>
      <test_2/>
      <test_4/>
      <test_5/>
      <test_A/>
<test>

Moi je voudrais placer la balise test_A après la balise test_2 et avant la
balise test_4 afin d'avoir:
<test>
      <test_1/>
      <test_2/>
      <test_A/>
      <test_4/>
      <test_5/>
<test>

Quelqu'un aurait il une suggestion ?

Pour info, voici le code que j'utilise pour faire ce que je fais:
                  //xpath permettant de rechercher dand la liste de toutes
les balises NouvellePhrase
                  //la nouvelle phrase dont l'id est oldPhraseId
                  String xpath = "(//NouvellePhrase)[position()="
+oldPhraseId+"]";

                  // se positionner sur le BlocTexte du titre de la méthode
                  NodeList listNouvellePhraseNode =
xInterrogate.evaluate(xpath, xmlDocument);
                  Node blocTexteNouvellePhraseNode =
listNouvellePhraseNode.item(0).getParentNode();

                  //on supprime le noeud composant l'element BlocTexte
                  if(listNouvellePhraseNode!=null &&
listNouvellePhraseNode.getLength() > 0) {
                        for(int
i=0;i<listNouvellePhraseNode.getLength();i++) {

blocTexteNouvellePhraseNode.removeChild(listNouvellePhraseNode.item(i));
                        }
                  }

                  //on reconstruit la nouvelle phrase avec la balise
"PhraseTemporaire"
                  if(xmlFlux == null){
                        Element newELE = getPhraseTemporaireElement();
                        blocTexteNouvellePhraseNode.appendChild(newELE);
                  }
                  else{
                        Document xmlFluxDoc = loadXMLString(xmlFlux);

                        //Element newELE = xmlFluxDoc.getDocumentElement();
                        Element newELE = getPhraseElement(xmlFluxDoc);

                        blocTexteNouvellePhraseNode.appendChild(newELE);
                  }

      private Element getPhraseTemporaireElement() {
            // on créé <PhraseTemporaire></PhraseTemporaire>
            Element tempPhraseNode =
xmlDocument.createElement(XML_DOCUMENT_TEMP_PHRASE_NAME_NODE);
            // on créé <texte></texte>
            Element tempPhraseNodeTexteNode =
xmlDocument.createElement(XML_DOCUMENT_TEMP_PHRASE_TEXTE_NAME_NODE);
            // on rajoute la valeur au noeud newPhraseTexteNode
            tempPhraseNodeTexteNode
.appendChild(xmlDocument.createTextNode(newPhrase));
            // on rajoute le noeud <texte> à <PhraseTemporaire>
            tempPhraseNode.appendChild(tempPhraseNodeTexteNode);

            return tempPhraseNode;
      }

Merci

--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de 
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant 
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Received on Mon Mar 20 17:57:00 2006

Archive générée par hypermail 2.1.8 le 31/03/2006 - 10:22 UTC

webmaster@xmlfr.org

 

xml tech

Discussions techniques au sujet de XML.

Cette liste est à votre disposition pour discuter en français de tout sujet technique lié à XML.



Devenez rédacteur <XML>fr et contribuez au développement du xml francophone !
Les documents publiés sur ce site le sont sous licence "Open Content"
Conception graphique
  l.henriot@online.fr  

Conception, réalisation et hébergement