-DOM写入
- 获取Document对象
documentBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
Document document = documentBuilder.newDocument();
- 上述的document对象应该就是整个DOM的入口了,可以用document.appendchild(ele);来往Dom树中添加节点,同时每个Element对象也可以用appendChild(ele);来往树中添加节点,还可以通过Element对象的setAttribute(str,str);来设置节点的属性,下面看下代码实现:
`
Element bookStore = document.createElement("BookStore");
//新建Book节点
Element book = document.createElement("Book");
book.setAttribute("id", "1");
Element name = document.createElement("Name");
name.setTextContent("活着");
book.appendChild(name);
bookStore.appendChild(book);
document.appendChild(bookStore);
`
- 最后就是要将内容输出xml文件了,主要用到的类有:TransformerFactory及其子类Transformer
`
//将document输出到book1.xml文件中
TransformerFactory tff = TransformerFactory.newInstance();
Transformer tf = tff.newTransformer();
//设置每输出一个节点后换行
tf.setOutputProperty(OutputKeys.INDENT, "yes");
//主要实现代码,调用别人的类,不会解释。。。
tf.transform(new DOMSource(document), new StreamResult(new File("book1.xml")));
`
- ps:如果xml头部有Standalone属性,可以用document.setXmlStandalone(true);把它取消掉,Standalone是什么可以去wiki看一下。
网友评论