Dom4j 解析XML (初级入门)

关键技术

1.SAXReader类

   该类用于解析XML文档

2.Document类

   该类是一个文档实例,通过该类的addelement()方法可以实现向XML中添加元素,并可获得封装文档子元素的Element对象

        Element element = document.addelement("这里写XML文件的根元素");

3.Element类

   该类封装了文档中的元素信息

   (1).addcomment()方法:该方法用于向XML文档中添加注释

    (2).addelement()方法:该方法用于向XML文件中添加子元素

    (3).settext()方法:该方法用于设置元素的文本

    (4).addAttribute()方法:该方法用于向元素中添加属性。它有两个String类型的参数

                 name:指定属性名称

                 value:指定属性值

实例代码

import java.io.File;
import java.io.FileWriter;
import java.util.Iterator;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;

public class Temp {
	//创建SAXReader对象,解析XML文档
	SAXReader reader =null;
	//写入XML数据流是需要使用
	XMLWriter output=null;
	OutputFormat format = null;
	public Temp(){
		this.reader= new SAXReader();
	}
	public void addXmlNod(String fileName){
		//加异常捕获的快捷键是:Shift+Alt+Z 选择6选项
		try {
			//创建文档对象
			Document document = reader.read(new File(fileName));
			//获取user元素中的子元素
			List list = document.selectNodes("/user");
			//迭代list中的元素
			Iterator iter = list.iterator();
			Element element = (Element)iter.next();
			Element nameElement = element.addElement("name");
			//设置name节点的属性值为:xiaoming
			nameElement.setText("xiaoming");
			//创建节点
			format=OutputFormat.createCompactFormat();
			//设置编码
			format.setEncoding("utf-8");
			output=new XMLWriter(new FileWriter(fileName),format);
			//向数据流写入数据
			output.write(document);
			//释放资源
			output.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}


你可能感兴趣的:(Dom4j 解析XML (初级入门))