// xmlDemo.xml xml 测试文件
<?xml version="1.0" encoding="utf-8" standalone="no"?><book>
<bookName>THINK IN JAVA</bookName>
<author>ldh</author>
<price>1000</price>
</book>
//xmlDemo.class
package demo1007;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
/**
* JAXP 的dom 解析
*/
public class xmlDemo {
public static void main(String[] args) throws Exception {
DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();
DocumentBuilder db = factory.newDocumentBuilder();
Document document = db.parse("d:\\test\\xmlDemo.xml");
Node book = document.getElementsByTagName("book").item(0);
NodeList childNodes = book.getChildNodes();
//遍历book所有节点
for(int i=0;i<childNodes.getLength();i++) {
Node node = childNodes.item(i);
String nodeName = node.getNodeName();
System.out.println(nodeName+" "+node.getTextContent());
}
// // 在book节点下增加一个节点
// Element date = document.createElement("date");
// date.setTextContent("2016-10-08");
// book.appendChild(date);
// //删除date节点
// Node date = document.getElementsByTagName("date").item(0);
// Node node = date.getParentNode().removeChild(date);
// System.out.println("delete node : "+ node.getNodeName());
//回写
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.transform(new DOMSource(document), new StreamResult("d:\\test\\xmlDemo.xml"));
}
}