在运行时动态更新xml文件

时间:2012-03-02 00:57:18

标签: java xml

如何使用java程序在运行时动态编辑xml文件。例如,我有像这样的xml文件,

<chart>
<set label="Item A" value="4"/>
<set label="Item B" value="5"/>
<set label="Item C" ``alue="6"/>
<set label="Item D" value="7"/>
</chart>

我在运行时尝试了jdom API for update xml。但它只能编辑单值标签。但在这里,我有同名的多标签。我想在运行时为每个标签动态更改值。任何人都可以建议我任何想法。

1 个答案:

答案 0 :(得分:0)

假设你正在使用jdom-1.1.2.jar

Document doc = (Document) builder.build(YourFileName);
Element rootNode = doc.getRootElement();
List<Element> childrenNode = rootNode.getChildren();
      for (Element child : childrenNode) {
           System.out.println(child.getAttribute("value").getIntValue());
           child.getAttribute("value").setValue("2");
      }

// print updates to xml file with good formatting
XMLOutputter xmlOutput = new XMLOutputter();
xmlOutput.setFormat(Format.getPrettyFormat());
xmlOutput.output(doc, new FileWriter(YourFileName));