DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(new File("example.xml"));
Element rootElement = document.getDocumentElement();
iterateElements(rootElement);
...
private static void iterateElements(Element element) {
System.out.println("Element: " + element.getNodeName());
System.out.println("Value: " + element.getTextContent());
NodeList childNodes = element.getChildNodes();
for (int i = 0; i < childNodes.getLength(); i++) {
Node childNode = childNodes.item(i);
if (childNode.getNodeType() == Node.ELEMENT_NODE) {
iterateElements((Element) childNode);
}
}
}
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();
DefaultHandler handler = new DefaultHandler() {
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
System.out.println("Element: " + qName);
for (int i = 0; i < attributes.getLength(); i++) {
System.out.println("Attribute: " + attributes.getQName(i) + " = " + attributes.getValue(i));
}
}
};
parser.parse(new File("example.xml"), handler);
SAXBuilder builder = new SAXBuilder();
Document document = builder.build(new File("example.xml"));
Element rootElement = document.getRootElement();
System.out.println("Root Element: " + rootElement.getName());
List<Attribute> attributes = rootElement.getAttributes();
for (Attribute attribute : attributes) {
System.out.println("Attribute: " + attribute.getName() + " = " + attribute.getValue());
}
...
Element newElement = new Element("newElement");
newElement.setText("Hello, World!");
document.getRootElement().addContent(newElement);
XMLOutputter outputter = new XMLOutputter(Format.getPrettyFormat());
outputter.output(document, new FileWriter("output.xml"));