关于XML文件解析
XML(可扩展标记语言)
通过xml可以记录信息,XML记录信息是通过标记方式来进行的
标记由标记名称,属性,和内容组成。
XML只有一个根标记,在根标记可以随意书写各种其他的标记
在xml记录信息的目的一定是为了使用这个信息,那么就在java程序中能够读取和解析xml文件中记录的内容。
解析XML文件的方式有很多,列入DOM,SAX,其中DOM4J作为解析XML文件的方式
关于读取XML文件的内容
- 下载dom4J
- 引入项目中
3. 编写xml文件
<?xml version="1.0" encoding="utf-8"?>
<student class="13班">
<student>
<name>张三</name>
<age>22</age>
<sex>男</sex>
</student>
<student>
<name>李四</name>
<age>20</age>
<sex>女</sex>
</student>
</student>
- 测试
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class Test {
public static void main(String[] args) {
//创建XML文件的解析对象
SAXReader reader=new SAXReader();
//通过解析对象解析XML文件获取文档对象
try{
Document document=reader.read("src/my.xml");
//获取文档根节点
Element rootElement=document.getRootElement();
//获取根节点的student标签
List<Element> studentElements = rootElement.elements("student");
//循环集合
for(Element studentElement:studentElements){
//获取student标签下的三个标签
Element nameElement=studentElement.element("name");
Element ageElement=studentElement.element("age");
Element sexElement=studentElement.element("sex");
//取出3个标签的文本内容
String name=nameElement.getText();
String age= ageElement.getText();
String sex= sexElement.getText();
System.out.println("姓名:"+name+"年龄:"+age+"性别:"+sex);
}
}catch(DocumentException e){
e.printStackTrace();
}
}
}
- 运行结果