2011-06-30 39 views
5

मैं मौजूदा एक्सएमएल नोड को नए नाम में बदलना चाहता हूं। मैं डीओएम अवधारणा जावा का उपयोग कर एक्सएमएल पार्सिंग कर रहा हूं, मेरे पास नोड का सेट है जिसमें एक ही नाम है। उदाहरण के लिएएक्सएमएल नोड नाम का नाम कैसे बदलें

<names> 
    <abc>Apple</abc> 
    <abc>Ball</abc> 
    <abc>Cat</abc> 
    <abc>Doll</abc> 
    <abc>Elephant</abc> 
    </names> 

मैं उपर्युक्त उदाहरण में नोड्स का सेट मूल्य है। कि उदाहरण में मैं नोड मूल्य (यानी) बदलने के लिए

<names> 
    <name>Apple</name> 
    <name>Ball</name> 
    <name>Cat</name> 
    <name>Doll</name> 
    <name>Elephant</name> 
    </names> 

डोम में करने के लिए यह संभव है चाहता हूँ, मैं हूँ मूल्यवान टिप्पणी के लिए बहुत डोम का उपयोग कर अवधारणा को पार्स करने के लिए बहुत नया .. धन्यवाद।

उत्तर

10

updating a property of a xml tag में मेरा जवाब देने के लिए समान:

public void changeTagName(Document doc, String tag, String fromTag, String toTag) { 
    NodeList nodes = doc.getElementsByTagName(fromTag); 
    for (int i = 0; i < nodes.getLength(); i++) { 
     if (nodes.item(i) instanceof Element) { 
      Element elem = (Element)nodes.item(i); 
      doc.renameNode(elem, elem.getNamespaceURI(), toTag); 
     } 
    } 
} 
+0

doc.renameNode काम नहीं कर रहा ... क्या कोई विकल्प नहीं है .. ?? – RAAAAM

+2

renameNode() वह है जिसे आप ढूंढ रहे हैं। क्या आपके दस्तावेज़ों में नामस्थान हैं? यह चीजों को जटिल कर सकता है। –

संबंधित मुद्दे