使用java基于条件创建新的xml文件

时间:2016-08-02 13:06:35

标签: java xml

我正在通过我拥有的所有xml孩子,并在孩子身上检测到一个名为TYPE的子项, 如果它具有值F,则将其从我的对象中删除:resultObjectAtt。而且resultObjectAtt中剩下的是什么 传递给函数,该函数使用传递的内容创建新的xml文件。 我的问题是如何将带有F的子项添加到新的xml文件中,而不更改resultObjectAtt中的任何内容。

for (int j = 0; j < childElem.size(); j++) { 
//Number of children under the root

    subChildElem = childElem.get(j).getChildren(); // subchildren

    for (int j2 = 0; j2 < subChildElem.size(); j2++) {
        Name = subChildElem.get(j2).getName(); //subchild name
        Value = subChildElem.get(j2).getValue(); //subchild value
        if(Name.equalsIgnoreCase("TYPE")){
            if(Value.equals("F")){
                resultObjectAtt.getRootElement().getChildren().remove(j);
                convertDocumentToXmlFile("C:\\test.xml", resultObjectAtt);
            }
        }
    }
}



private void convertDocumentToXmlFile(String path, Document doc){

    try {
        XMLOutputter xmlOutput = new XMLOutputter();

        xmlOutput.setFormat(Format.getPrettyFormat());
        xmlOutput.output(doc, new FileWriter(path));

        System.out.println("File Saved!");

    } catch (Exception e) {
        e.printStackTrace();
    }
}

1 个答案:

答案 0 :(得分:0)

您创建了一个新的VBE对象,然后使用Document“复制”了所需的Node个对象。