我以下列方式创建了一个xml:
public static Document baseTemplate(String topLevel,String[] pkey) throws ParserConfigurationException{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.newDocument();
Element top = doc.createElement(topLevel);
for(int i= 0;i<pkey.length;i++){
Element child = doc.createElement(pkey[i]);
top.appendChild(child);
}
doc.appendChild(top);
return doc;
}
这将创建一个虚拟xml,例如基于为topLevel传递的输入及其中的各个元素。
现在我希望以后可以使用值更新单个元素。基于传递的输入,xml结构将是通用的。类似地,更新逻辑也必须是通用的。我如何实现它?
答案 0 :(得分:0)
只是一个想法,“使用XPATH编辑XML或创建XML”,对于每个传递的新输入,您需要 XPATH 标记要更新的节点,请尝试以下操作:
Document doc = /*you have this in your code */
XModifier modifier = new XModifier(doc);
modifier.addModify("//PersonList/Person[2]/Name", "newName");
modifier.modify();
您可以在此处找到有关XModifier的更多信息:https://github.com/shenghai/xmodifier 希望能帮到你。