xml中常见的四种解析方式是什么?

xml解析方式有:1、DOM解析方法,可以对xml文档进行修改操作;2、SAX解析方法,解析速度快,占用内存少;3、JDOM解析方法,查找方便;4、DOM4J解析方法,解析XML的速度快。

xml中常见的四种解析方式是什么?

在XML的解析方式有很多,但有四种解析方式是最常用的,分别为DOM方法、SAX方法、JDOM方法、DOM4J 方法。

XML简介

XML即可扩展的标记语言,可以定义语义标记(标签),是元标记语言。XML不像超文本标记语言HTML,HTML只能使用规定的标记,对于XML,用户可以定义自己需要的标记。树状模型。 

XML文档以层级标签的形式来组织数据,多用于配置文件、存储静态数据、交换数据。

XML语法

1、每个XML文档都由XML序言开始,在前面的代码中的第一行便是XML序言,

2、任何的起始标签都必须有一个结束标签。

3、标签必须按合适的顺序进行嵌套,所以结束标签必须按镜像顺序匹配起始标签。

4、标签如果有属性,属性值必须加双引号。

XML文件解析的四种方式

1、DOM解析方法

DOM,文档对象模型(Document Object Model),是官方推荐的标准。DOM是html和xml文档的编程接口规范,和平台、语言是无关的。利用DOM规范,能够实现DOM 文档和xml之间的相互转换,遍历、操作相应DOM文档的内容。DOM规范的核心就是树模型,全部读取之后再解析。

原理是:首先在内存中创建一个Document对象,然后把XML文档读取进来赋值给这个dom对象。由于dom对象是基于树结构的,所以对dom对象进行遍历即可。对内存中的dom对象可以进行查询、修改、删除操作,还可以写回原XML文档保存修改。

优点:由于整棵树在内存中,因此可以对xml文档随机访问;可以对xml文档进行修改操作
缺点:整个文档必须一次性解析完;由于整个文档都需要载入内存,对于大文档成本高

2、SAX解析方法

SAX,简单应用程序接口(Simple Api For Xml)。非W3C官方所提供的标准,是一个程序员社区研究出来。SAX在概念上与DOM完全不同。非文档驱动,是事件驱动的。事件驱动:一种基于回调机制的程序运行方法。由外至内一层一层解析。

优点:解析速度快,占用内存少,它需要哪些数据再加载和解析哪些内容。

缺点:它不会记录标签的关系,而是需要应用程序自己处理,这样就会增加程序的负担。

3、JDOM解析方法

JDOM是Java和DOM的结合体。JDOM 致力于建立一个完整的基于 Java 平台的、通过 Java 代码来访问、操作并输出 XML 数据。JDOM是用Java语言读、写、操作XML的新API函数。简单、高效、优化。 

优点:查找方便,可以修改

缺点:装载整个文档,对内存容量要求高

4、DOM4J解析方法。

dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。性能优异功能强大简单易用开放源代码。它是目前最流行、最好用的XML解析工具,解析XML的速度最快。

操作步骤:

1:创建SAXReader:SAXReader reader = new SAXReader();
2:创建文件输入流打开xml文件:InputStream in = new FileInputStream(“XXX.xml”);
3:通过reader和输入流读取xml文件到内存创建Document对象:Document dom = reader.read(in); 
4:获取根节点:Element root=dom.getRootElement();
5:获取子节点列表:List childNodes = root.elements();
6:遍历子节点:Element node = childNodes.get(i);
7:读取结点信息:
 1)、结点属性值:node.attributeValue(“属性名”);
 2)、结点名:node.getName();
 3)、结点值:node.getValue();
 4)、子结点文本值:node.elementText(“子结点名”)

相关视频教程推荐:《XML教程》

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注创想鸟相关教程栏目!!!

以上就是xml中常见的四种解析方式是什么?的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1429075.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月17日 02:24:33
下一篇 2025年12月17日 02:24:51

相关推荐

  • 为什么用json不用xml

    原因:1、JSON结构更容易映射至一般语言的数据结构;2、XML需要选择怎么处理element+content的换行,json不需要;3、XML没有预设的数字格式,JSON有;4、XML数组元素tag比较重复冗余,JSON比较易读。 为什么很多人都反对使用XML而支持使用JSON呢?下面我将就这一问…

    2025年12月17日
    000
  • 您了解XML么?它是做什么用的?

    是什么? XML,Extensible Markup Language,扩展性标识语言。文件的后缀名为:.xml。就像HTML的作用是显示数据,XML的作用是传输和存储数据。 据说,java是一门专业操作XML的语言。 是干啥用的? 为了便于不同应用、不同平台之间的数据共享和通信。 具体点的作用为:…

    2025年12月17日 好文分享
    000
  • xml是什么格式的文件

    xml是一种纯文本格式的文件。xml指的是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言;而XML文件一般指里面写有可扩展标记语言代码的文件。 本教程操作环境:windows7系统、Dell G3电脑。 XML文件一般指里面写有可扩展标记语言的文件。 xml一…

    2025年12月17日
    000
  • XSL是什么以及有什么用

    XSL代表可扩展样式表语言,它是用来理解和样式化XML文档,它可以作为基于XML的样式表语言,就像CSS是基于HTML的样式表语言一样;它是一种标记语言,可以指定浏览器应该如何呈现XML文档。 简单来说,XSL是一种用于以可读格式来呈现XML数据的语言,可以将XML中的数据用用户指定的格式来输出显示…

    2025年12月17日
    000
  • 通过XSLT将xml转换为html的代码示例

    c#使用XSLT将xml文档转换为html文档使用xslt可以将xml文档转成html,如下c#函数:需要引用下面的命名空间:using System.Xml; using System.Xml.Xsl; 方法实现:public static string ConvertXML(XmlDocumen…

    好文分享 2025年12月17日
    000
  • php读取XML的四种方法实例详解

    这篇文章主要介绍了php读取xml的常见方法,结合实例形式总结了php基于domdocument、simplexml、正则及xmlreader读取xml文件的相关操作技巧,需要的朋友可以参考下 本文实例讲述了php读取XML的常见方法。分享给大家供大家参考,具体如下: xml源文件 张映 男 28 …

    好文分享 2025年12月17日
    000
  • src下xml等资源文件无法读取的问题在IDEA中如何解决

    该问题的实质是,idea对classpath的规定。 在eclipse中,把资源文件放在src文件夹下,是可以找到的; 但是在idea中,直接把资源文件放在src文件夹下,如果不进行设置,是不能被找到的。 下面说说几种解决方法,网上说的都很混乱,我这里做一个总结:推荐方法4 1.将所有资源文件放在r…

    好文分享 2025年12月17日
    000
  • 详细介绍XML和JSON区别

    今个去面试,一个人事经理问我xml和json的区别我没答上来感觉很难过,于是就回来后就查阅相关资料写点东西:: 1.定义介绍(1).XML定义扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,…

    好文分享 2025年12月17日
    000
  • 关于JSON和XML优缺点的具体介绍

    json(javascript object notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于javascript programming language, standard ecma-262 3rd edition – decembe…

    好文分享 2025年12月17日
    000
  • 分享一个利用Ajax传递Xml文档的方法

    客户端 //生成XML文件 function GetAllFormData() { var strXML = “\r\n\r\n”; strXML += “bccu” strXML += “25”; strXML += “\r\n” return strXML; } ///向服務器发送XML文档 f…

    好文分享 2025年12月17日
    000
  • java使用SAX解析xml的代码实例

    import java.io.File;import java.util.LinkedList;import java.util.List; import javax.xml.parsers.SAXParser;import javax.xml.parsers.SAXParserFactory; i…

    好文分享 2025年12月17日
    000
  • 用Java解析XML文件的代码示例

    用java解析xml文档,最常用的有两种方法:使用基于事件的xml简单api (simple api for xml)称为sax和基于树和节点的文档对象模型(document object module)称为dom。 Sun公司提供了Java API for XML Parsing(JAXP)接口来…

    好文分享 2025年12月17日
    000
  • java DOMParser 解析xml的实例详解

    import java.io.*;import java.net.*;import org.w3c.dom.*;import org.w3c.dom.Node.*; import oracle.xml.parser.v2.*; /** * ——————————…

    好文分享 2025年12月17日
    000
  • android读取xml的代码实例

    /*** 从config.xml中获取版本信息以及应用id** @param urlPath* @return* @throws Exception*/public List getUpdateInfo() {Resources r = context.getResources();// 通过Res…

    好文分享 2025年12月17日
    000
  • c#中xml操作类的代码详解

    using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.Web…

    好文分享 2025年12月17日
    000
  • 用C#实现XML和实体类之间序列化和反序列化相互转换

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Data; using System.Xml; using Syst…

    好文分享 2025年12月17日
    000
  • C#中通过xpath查找xml的指定元素的代码实例

    orders.xml文档内容如下 Remarkable Office Supplies Electronic Protractor 42.99 Invisible Ink 200.25 //该代码片段来自于:www.sharejs.com/codes/csharp/7775 C#代码using Sy…

    好文分享 2025年12月17日
    000
  • XSL将XML中的CDATA注释输出为HTML文本的代码实例

    要利用dom 来存取xml 文件,你必须将xml 文件连结到html 网页上。 示例代码 1. test.xml entry with imagesAugust 09, 2003Kevin000033http://alazanto.org/xml/archives/000033.xmlhttp://…

    好文分享 2025年12月17日
    000
  • 用Shell脚本生成XML文件实例详解

    今天把这段时间学习完shell后完成工作上的一个小案件整理了一下,分享给大家! 说来也巧了,作为一个刚刚毕业半年的菜鸟,进入公司后,听公司的大牛推荐学习linux–”鸟哥的私房菜“,基本上是从去年8月份开始到了今年的1月份,基本上是把基础篇看完了,开始了解shell脚本的相关知识。刚好公司有了一个s…

    2025年12月17日
    000
  • 把SQL Server中的数据导出为XML和Json的方法解析

        有时候需要一次性将SQL Server中的数据导出给其他部门的也许进行关联或分析,这种需求对于SSIS来说当然是非常简单,但很多时候仅仅需要一次性导出这些数据而建立一个SSIS包就显得小题大做,而SQL Server的导入导出工具其中BUG还是蛮多的,最简单的办法是BCP。 数据导出为XML…

    2025年12月17日 好文分享
    000

发表回复

登录后才能评论
关注微信