XML学习(三)——XML解析

XML解析是应用程序的基础,涉及词法分析和语法分析。DOM解析将XML转换为树形结构,易于使用但内存消耗大。SAX和StAX是流式解析,SAX采用“推”模式,StAX是“拉”模式,内存占用低,不支持随机访问和XPath。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

XML解析

XML解析是基于XML上层应用程序的基础。
XML解析器一方面负责分析XML内部文档数据,建立相应的数据结构或产生特定的事件以表示这些信息;另一方面,还要为上层应用程序提供必要信息,供上层进行XML文档的操作。
XML解析器的性能高低直接决定了上层应用程序的性能,传统的XML解析有两种,在之后会进行介绍。

XML解析流程

XML解析流程
在这里插入图片描述
XML解析时,首先将XML文档转换为字节流然后变为有序的字符流,之后进行词法分析和语法分析,最后反馈给上层应用程序。(词法分析和语法分析的概念可以参考编译原理中的概念,基本一致)


XML解析方式
根据解析时是否进行对XML文档的提取分为提取式和非提取式,其中非提取式又可以分为基于DOM和基于流的解析方式
在这里插入图片描述
这里主要描述提取式的两种解析方式


基于XML DOM的解析
XML DOM定义了一套XML文档进行访问、添加、修改、删除的标准接口和方法,所有DOM解析器都基于这套方法。XML DOM将XML文档看作树状的层次节点集合,就像编译原理中的语法分析一样,将XML文档转换为一颗树。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值