如何将属性添加到XML元素

时间:2012-10-09 19:18:46

标签: java xml parsing dom

我正在使用DOM解析器。我必须解析以下XML:

    <abc>
       <type action="">
          <code>test</code>
          <value>001</value>
       </type>
       <type action="">
          <code>test2</code>
          <value>002</value>
       </type>
    </abc>

因此,根据value字段下的type字段,我必须在action字段中填写type属性。我有点难过。我能够获得value字段的值,但我不知道如何返回并添加属性。

任何帮助都会受到很多赞赏!!!

谢谢!

2 个答案:

答案 0 :(得分:4)

要返回,只需在遍历其type孩子之前保存对Element value的引用。 (假设你已经访问过它了。)

要更改值,请使用setAttribute()方法。

编辑:

替代方法:从value文本节点,调用getParentNode()两次(一次返回值元素&amp;一次返回类型元素),然后调用{{1}在你做任何一次冒犯之后。

答案 1 :(得分:1)

尝试类似

的内容
nodelist = doc.getElementsByTagName("value");
for (Element element : nodelist) {
Element parent = element.getParentNode()
parent.setAttribute("action", "attrValue");
}