在idea上编写xml文件,和解析
- 第一建一个file后缀名是.xml就可
- 接着我们往里面添加如下内容
<?xml version="1.0" encoding="utf-8" ?>
<!--我是注释标签-->
<stus>
<stu id="18">
<name>nihao</name>
<age>15</age>
<address>hahahh</address>
</stu>
<stu id="12">
<name>nihao1</name>
<age>13</age>
<address>hahahh1</address>
</stu>
</stus>
- 第一步已经完成了, 接下来就是解析
我们需要一个驱动,但是在csdn上面都是花钱才能用的,我就给大家一个良心教程
官网下载
-下完之后导入外部库
- 接下来弄一个类,来读取这个文件
package filexml;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import java.io.File;
import java.util.List;
public class MainTest {
public static void main(String[] args) {
try {
//1.创建sax读取对象
SAXReader reader =new SAXReader();
//2.指定解析的xml源
Document document=reader.read(new File("src/filexml/Student.xml"));
//3得到元素 得到根元素
Element rootElement=document.getRootElement();
System.out.println(rootElement.element("stu").getName());//输出stu
System.out.println(rootElement.element("stu").element("age").getName());
//下面这两个是获取age里面的内容
System.out.println(rootElement.element("stu").element("age").getText());
System.out.println(rootElement.element("stu").element("age").getStringValue());
//获取根元素下面的所有子元素
List<Element> elements=rootElement.elements();
//遍历所有的stu元素
for(Element element:elements){
String name=element.element("name").getText();
String age=element.element("age").getText();
String address=element.element("address").getText();
System.out.println("name="+name+"==age+"+age+"==address="+address);
}
} catch (DocumentException e) {
e.printStackTrace();
}
}
}
有什么不懂的地方欢迎评论交流,真的是良心教程,不是为了教程,是为了自己以后找的之后方便一些,喜欢的点个赞支持一下下,灰常感谢