DOM操作XML

创建简单的XML文件

使用 DocumentBuilderFactory 类的 newDocumentBuilder() 方法可以创建一个 DocumentBuilder 实例。

使用 DocumentBuilder 对象的 newDocument() 方法可以创建一个空白的 XML 文件。

使用 Document 对象的 createElement() 方法可以创建一个 XML 元素。

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();

Document doc = builder.newDocument();
Element book = doc.createElement("book:book");
book.setAttribute("xmlns:book", "http://www.baidu.com");
doc.appendChild(book);

使用 StreamResult 类的构造函数可以创建一个 StreamResult 实例,通过该实例能把一个 XML 文件转换成数据流的结果集。

TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource domSource = new DOMSource(doc);
StreamResult target = new StreamResult(new File("test.xml"));
transformer.transform(domSource, target);

设置属性控制输出的样式

TransformerFactory factory=TransformerFactory.newInstance();
factory.setAttribute("indent-number", "4");

Transformer transformer=factory.newTransformer();
transformer.setOutputProperty(OutputKeys.ENCODING, "gb2312");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");

使用 DOM 添加 XML 元素

使用 DOMSource 类的构造函数,可以创建一个 DOM 的数据源,生成 XML 文件时,从该数据源获取数据。

添加 XML 元素时,使用 setTextContent() 方法可以为指定的 XML 元素添加内容。

如果 XML 元素含有属性,可以使用 setAttribute() 方法添加属性名称和属性值。


使用 DOM 删除 XML 元素

使用 Node 类的 removeChild() 方法可以删除不需要的节点。

removeChild() 方法只能删除当前节点的下一级元素。

你可能感兴趣的:(DOM操作XML)