博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
xml解析
阅读量:6993 次
发布时间:2019-06-27

本文共 1628 字,大约阅读时间需要 5 分钟。

1、xml解析就是程序读取xml文件的内容。

2、解析方式有两种,原理不同:(1)DOM解析(2)SAX解析

  dom解析原理:xml解析器一次性把整个xml文档加载进内存,然后在内存中构建一颗Document对象树,然后通过Document对象得到树上节点对象,通过节点对象操作XML文档的内容。

3、

DOM解析原理下的工具:

  JAXP(Oracle —Sun官方的)

  JDom(非官方)

  Dom4J(非官方)使用最多,比如三大框架

SAX解析原理:

        1)Sax解析工具(oracle-sun公司官方)

4、使用Dom4J,例子:

  使用步骤:

      (1)导包,复制dom4j-1.6.1.jar到工程,并选择Build Path→Add to build path.

      (2)编写代码读取XML。

public class Demo1 {    public static void main(String[] args) {        try {        //1、创建XML解析器对象        SAXReader reader = new SAXReader();        //2、读取XML文档,返回Document对象            Document document = reader.read(new File("./src/contact.xml"));            System.out.println(document); //结果:org.dom4j.tree.DefaultDocument@3ecfff [Document: name file:///D:/JavaEE/spaceone/day6-xml/./src/contact.xml]         } catch (DocumentException e) {            e.printStackTrace();            throw new RuntimeException(e);        }    }}

5、dom4J读取xml文件的一些方法。

节点:  

    Iterator  Element.nodeIterator;//获取当前节点下的所有子节点。

标签:

    Element  Document.getRootElement();//获取XML文档的跟标签

    Element  Element.element("标签名")//指定名称的第一个子标签

    Iterator<Element>  Element.elementItrator("标签名称");//返回指名称的所以子标签

    List<Element>  Element.elements();//获取所有子标签。

属性:

    String     Element.attributeValue("属性名") //获取指定名称的属性值

           Attribute     Element.attribute("属性名");//获取指定名称的属性对象     

                                Attribute.getName()  //获取属性名称

                                Attibute.getValue()  //获取属性值

           List<Attribute>         Element.attributes();  //获取所有属性对象

           Iterator<Attribute>     Element.attibuteIterator(); //获取所有属性对象

文本:

    Element.getText();  //获取当前标签的文本

           Element.elementText("标签名") //获取当前标签的指定名称的子标签的文本内容

 

转载于:https://www.cnblogs.com/h-g-f-s123/p/6101044.html

你可能感兴趣的文章
Ext Js简单Grid分页及选择器的使用
查看>>
slice 定义和用法
查看>>
分类游戏 结构体
查看>>
导出、恢复、上传镜像
查看>>
java第一个程序提示找不到符号-System.out.printIn
查看>>
LineageOS源码定制手机系统
查看>>
flask怎样获取authorization
查看>>
Python3 Selenium自动化web测试 ==> 第六节 WebDriver高级应用 -- 操作web页面的滚动条...
查看>>
HTMl5的sessionStorage和localStorage的一些区别
查看>>
Find Minimum in Rotated Sorted Array
查看>>
Android Studio模拟器的问题及解决办法
查看>>
实现Android ListView 自动加载更多内容
查看>>
高淇Struts2.0教程之视频笔记(6)
查看>>
python二进制读写文件
查看>>
sql server 高可用性技术总结
查看>>
近阶段学习总结(EasyUI的使用)
查看>>
第二次作业
查看>>
JSTL 运算符汇总
查看>>
IOS UIlabel 、UIButton添加下划线
查看>>
iOS 屏幕原点坐标 && 导航栏风格的自定义
查看>>