1.DOM解析方法
DOM,文档对象模型(Model),是官方推荐的标准。 DOM是html和xml文档的编程接口规范,与平台和语言无关。 利用DOM规范,可以实现DOM文档和XML之间的相互转换,并可以遍历和操作相应DOM文档的内容。 DOM规范的核心是树模型,全部看完就可以解析了。
原理是:首先在内存中创建一个对象,然后读取XML文档并赋值给dom对象。 由于dom对象是基于树结构的,所以遍历dom对象就足够了。 内存中的Dom对象可以查询、修改、删除,也可以写回原始XML文档保存修改。
优点:由于整棵树都在内存中,所以可以随机访问xml文档; 可以对xml文档进行修改操作 缺点:必须一次性解析整个文档; 由于需要将整个文档加载到内存中,因此大文档的成本很高
2.SAX分析方法
SAX,简单应用程序编程接口(Api For Xml)。 W3C 未正式提供的标准是由程序员社区研究的。 SAX 在概念上与 DOM 完全不同。 不是文档驱动,而是事件驱动。 事件驱动:基于回调机制的程序运行方式。 从外到内逐层分析。
优点:解析速度快,内存占用少,需要加载哪些数据就解析什么。
缺点:不会记录标签之间的关系,而是需要应用程序自己处理,会增加程序的负担。
3. JDOM解析方法
JDOM 是 Java 和 DOM 的组合。 JDOM 致力于构建一个基于Java 代码来访问、操作和输出XML 数据的完整Java 平台。 JDOM 是一个新的 API 函数,用于用 Java 语言读取、写入和操作 XML。 简单、高效、优化。
优点:容易查找、可修改
缺点:加载整个文档需要较高的内存容量
4.DOM4J分析方法。
dom4j是一个Java XML API,类似于jdom,用于读写XML文件。 性能卓越、功能强大、简单易用、开源。 它是目前最流行、最好用的XML解析工具,解析XML的速度也是最快的。
脚步:
1:创建:=new();
2:创建文件输入流来打开xml文件:in=new(“XXX.xml”);
3:通过输入流将xml文件读入内存创建对象:dom = .read(in);
4:获取根节点:root=dom.();
5:获取子节点列表:List = root.();
6:遍历子节点:node = .get(i);
7:读取节点信息:
1)、节点属性值:node.("属性名称");
2)、节点名称:node.();
3)、节点值:node.();
4) 子节点的文本值:node.("子节点名称")