package com.gyj.jdom;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
/**
* 写入DOM到XML文件
* @author GYJ
* @date 2014-3-23
*/
public class XMLWriterDOM {
/**
* 将会写入这么一份文件
* <p>1、根元素为"Employees" , 命名空间为"http://www.miamiheat.com"
* 2、创建两份员工,都有id属性
* 3、内容都有姓名、年龄、角色
* 4、写出数据到文件、打印到控制台
* @param args
* @throws TransformerException
*/
public static void main(String[] args) throws TransformerException {
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder;
try {
dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.newDocument();
//添加根元素
Element rootElement = doc.createElementNS("http://www.miamiheat.com", "Employees");
doc.appendChild(rootElement);
//添加子元素到根目录下
rootElement.appendChild(getEmployee(doc, "1", "gyj", "18"));
rootElement.appendChild(getEmployee(doc, "2", "james", "29"));
//把创建好的文件输出
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
DOMSource domSource = new DOMSource(doc);
//控制台输出
StreamResult console = new StreamResult(System.out);
//输出到文件
StreamResult file = new StreamResult("emp.xml");
//写数据
transformer.transform(domSource, console);
transformer.transform(domSource, file);
} catch (ParserConfigurationException e) {
e.printStackTrace();
}
//out put==============================================
/*<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Employees xmlns="http://www.miamiheat.com">
<employee id="1">
<name>gyj</name>
<age>18</age>
</employee>
<employee id="2">
<name>james</name>
<age>29</age>
</employee>
</Employees>*/
//======================================================
//生成了emp.xml
/*<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Employees xmlns="http://www.miamiheat.com">
<employee id="1">
<name>gyj</name>
<age>18</age>
</employee>
<employee id="2">
<name>james</name>
<age>29</age>
</employee>
</Employees>*/
}
private static Node getEmployee(Document doc, String id, String name, String age) {
//创建子节点
Element employee = doc.createElement("employee");
employee.setAttribute("id", id);
//创建字节点的元素
employee.appendChild(getEmployeeElements(doc, employee, "name", name));
employee.appendChild(getEmployeeElements(doc, employee, "age", age));
return employee;
}
/**
* 创建子元素节点
* @param doc 文档对象
* @param element 子元素的tag
* @param name 子元素节点
* @param value 子元素节点值
* @return
*/
private static Node getEmployeeElements(Document doc, Element element, String name, String value) {
Element node = doc.createElement(name);
node.appendChild(doc.createTextNode(value));
return node;
}
}
分享到:
相关推荐
利用jdom对xml文档进行操作,比如读写,删除等,我当时编码的时候找到的,比较详细,希望对大家有用。
jdom类读写xml的代码示例资料总结。
org.jdom.adapters包含了与dom适配的java类 org.jdom.filter包含了xml文档的过滤器类 org.jdom.input包含了读取xml文档的类 org.jdom.output包含了写入xml文档的类 org.jdom.transform包含了将jdomxml 文档接口转换...
JDOM是两位著名的 Java 开发人员兼作者,Brett Mclaughlin 和 Jason Hunter 的创作成果, 2000 年初在类似于 Apache 协议的许可下,JDOM 作为一个开放源代码项目正式开始研发,JDOM 作为一个开放源代码项目正式开始...
NULL 博文链接:https://rayoo.iteye.com/blog/1168067
NULL 博文链接:https://wen2006953.iteye.com/blog/1769333
很简单易懂的学习JDOM对XML的操作
总结DOM、SAX、JDOM、DOM4J读写xml文档的多种方法。
主要介绍了java使用Jdom实现xml文件写入操作的方法,以完整实例形式分析了Jdom针对XML文件写入操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的。dom4j是一个十分优秀的JavaXML API,具有性能优异、功能强大和极其易使用的特点,它的性能超过sun公司官方的dom技术,同时它也是一个开放源代码的...
org.jdom.adapters包含了与dom适配的java类 org.jdom.filter包含了xml文档的过滤器类 org.jdom.input包含了读取xml文档的类 org.jdom.output包含了写入xml文档的类 org.jdom.transform包含了将jdomxml 文档接口转换...
1、org.JDOM这个包里的类是你J解析xml文件后所要用到的所有数据类型。 Attribute CDATA Coment DocType Document Element EntityRef Namespace ProscessingInstruction Text 2、org.JDOM.transform在涉及...
Jdom.jar在JAVA中可以对XML文件进行操作,读取或者写入XML。
用jdom 操作xml文档 jdom+xpath 操作 xml 文档 Xstream
java中jxl.jar读写excel和jdom.jar读写xml的例子(含有所需jar包),经典实用。
先把ff.java复制到你的项目里面 再把jdom包导入 test.xml放在D:\的根目录下 就可以运行了 节点名可以自己自定义
介绍了如何通过java来读写xml的方法,其中介绍了几种方法,如:DOM、SAX、JDOM、JAXB、dom4j.
jsp处理xml文件的相关技术文档,有用DOM做XML处理.doc、用JDOM操作XML文.txt、在JSP开发中使用jdom解析临时存放数据的XML文件.txt、第8章_JSP实现对XML读写.pdf、从数据库Mysql读取数据转化为xml文档的Java类等,想...
Jdom 操作xml 对节点、对属性的添加,写入文件,等等
jdom的使用: xml文件的读取 xml文件的写入