利用dom4j读取XML文件

来源:互联网 发布:北京交通大学 知乎 编辑:程序博客网 时间:2024/05/17 01:21
<span style="font-size:18px;">以这段XML代码为例:</span>
<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?><game><frame title="JAVA" width="700" height="500" start_x="32" start_y="32"><text width="636" height="30" fonttype="黑体" fontsize="24"><textDemo/><textInput/></text><button width="300" height="64" ><buttonpause/><buttonrestart/></button></frame><data></data><system></system></game></span>

要读取这段XML代码,要注意一个问题,那就是字符集的问题,这里采用的utf-8,如果XML是在Eclipse外部创建的,而Eclipse的字符集与XML不相符,

很有可能抛出异常。

要读取XML文件,首先要创建一个读取器,dom4j的创建方法和读取文件方法为:

SAXReader reader = new SAXReader();
Document doc = reader.read("config/cfg.xml");

接着我们可以对XML树进行读取:

Element game = doc.getRootElement();
Element frame = game.element("frame");

若存在数组标签,可以调用XML的另一个方法elements进行读取,假设Frame是一个标签数组:

List<Element> frames = game.elements("frame");

对于标签内元素的读取,dom4j也为之提供了方法:

title = frame.attributeValue("framewidth");
framewidth = Integer.parseInt(frame.attributeValue("width"));
   //返回的是string类型,故要对其进行转换

其他标签的读取类似于以上方法。

当然,以上的代码实现会抛出异常,并且需要引入dom4j的外包


0 0
原创粉丝点击