XML编程知识点总结
DOM和SAX
DOM的全称是Document Object Model,也即文档对象模型。基于DOM的XML分析器将一个XML文档转换成一个对象模型的集合,应用程序挣是通过对这个对象模型的操作,来实现对XML文档数据的操作。
DOM接口提供了一种通过分层对象模型来访问XML文档信息的方式,这些分层对象模型依据XML的文档结构形成一颗节点树。也就是说,DOM强制使用树模型来访问XML文档中的信息。
SAX的全称是Simple APIs for XML,也即XML简单应用程序接口。SAX提供的顺序呢模式是一种顺序模式,这是一种快速读写XML数据的方式。应用程序通过这些事件处理函数实现对XML文档的访问,因而SAX接口也被称作事件驱动接口。
DOM的使用:
DOM的基本对象有5个:Document、Node、NodeList、Element和Attr。
我们总是先通过解析XML源文件而得到一个Document对象,然后再来执行后续的操作:
1、createAttribute(String):用给定的属性名创建一个Attr对象,并可在其后使用setAttributeNode方法来设置在某一个Element对象上面。
2、createElement(String):用给定的标签名创建一个element对象,代表XML文档中的一个标签,然后就可以在这个Element对象上添加属性或进行其他操作。
3、createTextNode(String):用给定的字符串创建一个Text对象,Text对象代表了标签或属性中所包含的纯文本字符串。
4、getElementsByTagName(String):返回一个NodeList对象,它包含了所有给定标签名字的标签。
5、getDocumentElement():返回一个代表这个DOM树的根节点的Element对象,也就是代表了XML文档根元素的那个对象。
Node对象是DOM结构中最为基本的对象,它代表了文档树中的一个抽象的节点。Node对象所包含的主要方法有:
1、appendChild(org.w3c.dom.Node):为这个节点增肌一个子节点,并放在所有子节点的最后。如果这个子节点已经存在,则先把它删掉再添加进去。
2、getFirstChild():如果节点存在子节点,则返回第一个子节点。(getLastChild()返回最后一个子节点)。
3、getNodeName():根据节点的类型返回节点的名称。
4、getNodeValue():返回节点的值。
Element对象代表的是XML文档中的标签元素,它继承于Node,也是Node的最主要的子对象。在标签中可以包含属性,因而Element对象中有存取其属性的方法。而任何Node中定义的方法,也可以用在Element对象上面。
1、getElementsByTagName(String):返回一个NodeList对象,它包含在这个标签中其下的子孙节点中具有给定标签名的标签。
2、getAttribute(String):返回标签中给定属性名称的属性值。因为XML文档中允许有实体属性出现,而这个方法对这些实体属性并不适用。这时需要用getAttributeNodes()方法得到一个Attr对象来进行进一步的操作。
XML编程知识点总结的更多相关文章
- LINQ to XML 编程基础
1.LINQ to XML类 以下的代码演示了如何使用LINQ to XML来快速创建一个xml: 隐藏行号 复制代码 ?创建 XML public static void CreateDocumen ...
- 【风马一族_xml】xml编程
xml编程:利用java程序支增删改查(CRUD)XML中的数据 解析思想: dom解析 sax解析 基于这两种解析思想市面上就有了很多的解析api sun jaxp (比较弱)既有dom方式也有sa ...
- C++的XML编程经验――LIBXML2库使用指南[转]
C++的XML编程经验――LIBXML2库使用指南 写这篇文章的原因有如下几点:1)C++标准库中没有操作XML的方法,用C++操作XML文件必须熟悉一种函数库,LIBXML2是其中一种很优秀的XML ...
- XML编程
XML编程 XML及其语法 XML约束之DTD XML编程(CRUD---Create Read Update Delete) XML约束之Schema XML语法: XML文档的组成: 一个X ...
- 【二十八】xml编程(dom\xpath\simplexml)
1.xml基础概念 作用范围: 作为程序通讯的标准. 作为配置文件. 作为小型数据库. xml语法: <根标签> <标签 元素="元素值" ...>< ...
- PHP 自学之路-----XML编程(Dom技术)
上一节,讲了Xml文件基本语法及元素,实体及Dtd约束技术,下面就正式进入PHP的Xml编程 使用PHP技术对Xml文件进行操作 常用的有以下三种技术: 1.PHP dom 2.PHP结合XPath操 ...
- C++的XML编程经验――LIBXML2库使用指南
C++的XML编程经验――LIBXML2库使用指南 写这篇文章的原因有如下几点:1)C++标准库中没有操作XML的方法,用C++操作XML文件必须熟悉一种函数库,LIBXML2是其中一种很优秀的XML ...
- VMware 虚拟机的虚拟磁盘编程知识点扫盲之二
目录 目录 前文列表 VDDK 安装 VDDK VixDiskLib VADP 前文列表 VMware 虚拟机的虚拟磁盘编程知识点扫盲之一 VDDK 摘自官方文档:The Virtual Disk D ...
- C的xml编程-libxml2(转)
这里主要讲述libxml2在linux下的使用. (以下内容除了linux下的安装步骤是自己写的,其余均出自http://www.blogjava.net/wxb_nudt/archive/2007/ ...
随机推荐
- Linux内核分析——分析system_call中断处理过程
万子惠 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 我选择的是get ...
- 黑马.net12期视频教程
完整高清视频http://www.ggfenxiang8.com/?p=301
- vs2010设置断点进行调试时不起作用
1.打开vs2010 2.点击web下的“属性” 3.点击“生成” 4.点击最下方的“高级” 5.在“输出”-调试信息中选择“full”,点击确定按钮即可
- PHP类和对象之间的关系
类是对象的描述: 类和对象之间的关系类似于建房子的图纸和房子: 创建类--new对象--用对象: 一.对象的两个特性: --对象的行为(功能):可以对对象施加操作,例如,电视机的开.关.转换频道: - ...
- CNN 逐层可视化 Ipython Notebook
http://nbviewer.ipython.org/github/BVLC/caffe/blob/master/examples/00-classification.ipynb
- NotePad++ 调试PHP代码中文显示乱码
最近在NotePad++上调试PHP代码,按照示例代码进行调试,结果在显示中文的时候显示一堆乱码,于是上网百度,有2种方法可以解决: 按调试方式有2种方法: 1.菜单插件-NppExec: " ...
- jquery的dom操作
DOM操作 $("p").appendTo("div");把p标签追加到div标签--中--后 $("p").prependTo(" ...
- 将list中的数据通过某一个字段来分类存储的实例
现有学生表 public class Student { /** * 班级id */ private String classId; /** * 学生name */ private String na ...
- eclipse Run On Server 异常:could not load the Tomcat Server configuration at Servers\tomcat V5.0 Sertomcat
eclipse Run On Server 异常:could not load the Tomcat Server configuration at Servers\tomcat V5.0 Serto ...
- 基于注解的SpringMVC简单介绍
SpringMVC是一个基于DispatcherServlet的MVC框架,每一个请求最先访问的都是DispatcherServlet,DispatcherServlet负责转发每一个Request请 ...