62,635
社区成员




DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
try {
DocumentBuilder db = dbf.newDocumentBuilder();
File file = new File("src/c03/students.xml");
Document doc = db.parse(file);
// --------- add element --------
Element eltStu = doc.createElement("student");
Element eltName = doc.createElement("name");
Element eltAge = doc.createElement("age");
Attr attr = doc.createAttribute("sn");
attr.setValue("03");
Text txtName = doc.createTextNode("王五");
Text txtAge = doc.createTextNode("19");
eltName.appendChild(txtName);
eltAge.appendChild(txtAge);
eltStu.appendChild(eltName);
eltStu.appendChild(eltAge);
eltStu.setAttributeNode(attr);
Element eltRoot = doc.getDocumentElement();
eltRoot.appendChild(eltStu);
// ---------- remove element ---------
NodeList nl = doc.getElementsByTagName("student");
Node nodeDel = nl.item(0);
nodeDel.getParentNode().removeChild(nodeDel);
// ---------- modify element ---------
Element eltChg = (Element)nl.item(0);
Node nodeAge = eltChg.getElementsByTagName("age").item(0);
nodeAge.getFirstChild().setNodeValue("22");
// ---------- print info -------------
for (int i = 0; i < nl.getLength(); i++) {
Element elt = (Element)nl.item(i);
System.out.println("编号:" + elt.getAttribute("sn"));
// print attribute
NamedNodeMap attributes = elt.getAttributes();
for (int a = 0; a < attributes.getLength(); a++) {
Node theAttribute = attributes.item(a);
System.out.println(theAttribute.getNodeName() + "= " + theAttribute.getNodeValue);
}= elt.getElementsByTagName("name").item(0);
Node nodAge = elt.getElementsByTagName("age").item(0);
String strName = nodeName.getFirstChild().getNodeValue();
String strAge = nodAge.getFirstChild().getNodeValue();
System.out.println("姓名:" + strName);
System.out.println("年龄:" + strAge);
}
// print text
Node nodeName
// serialize XML document to System.out
XMLSerializer serial = new XMLSerializer (System.out, null);
serial.serialize(doc.getDocumentElement());
}