<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的外包