学完了解析XML,就该学习生成XML文件了。
首先学习的是如何使用DOM方式生成XML文件。
使用DOM方式生成XML文件有如下几步:
首先是创建DOM树(即规定XML文件中的内容):
- 创建DocumentBuilderFactory对象
- 通过DocumentBuilderFactory对象创建DocumentBuilder对象
- 通过DocumentBuilder对象的newDocument()方法创建一个Document对象,该对象代表一个XML文件
- 通过Document对象的createElement()方法创建根节点
- 通过Document对象的createElement()方法创建N个子节点,并为他们赋值,再将这些子节点添加到根节点下
- 将根节点添加到Document对象下
其次是将DOM树转换为XML文件:
- 创建TransformerFactory类的对象
- 通过TransformerFactory创建Transformer对象
- 使用Transformer对象的transform()方法将DOM树转换为XML文件。(该方法有两个参数,第一个参数为源数据,需要创建DOMSource对象并将Document加载到其中;第二个参数为目的文件,即要生成的XML文件,需要创建StreamResult对象并指定目的文件)
下面开始实现:
首先是创建DOM树的部分:
创建DocumentBuilderFactory类的对象:
// 创建DocumentBuilderFactory
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
创建DocumentBuilder对象:
// 创建DocumentBuilder
DocumentBuilder builder = factory.newDocumentBuilder();
创建Document:
// 创建Document
Document document = builder.newDocument();
创建根节点:
// 创建根节点
Element bookstore = document.createElement("bookstore"