The easiest most and most efficient way to update XML documents is to use non-extractive parsers (such as VTD-XML) because they support incremental content update. Suppose you have the following XML document, named test.xml. Below is a snippet that inserts two attribute name/value pairs into an XML document.
<tag> hello world
Now, here’s the Java code for doing the attribute insertion:
public class simpleApp2 { public static void main(String[] s) throws Exception { VTDGen vg = new VTDGen(); XMLModifier xm = new XMLModifier(); if (vg.parseFile("test.xml", false)){ VTDNav vn = vg.getNav(); xm.bind(vn); xm.insertAttribute(" attr1='val1" attr2='val2'"); xm.output("new.xml"); } } }
The output, named new.xml, is shown below:
hello world