目录
- Jaxp解析器
- DOM解析XML
- Jaxp查询操作
- Jaxp添加节点操作
- Jaxp修改节点内容
- Jaxp删除节点
- 遍历xml中的所有节点
- SAX解析XML
- Demo
跳转到目录
- Jaxp解析器在jdk的
javax.xml.parsers
包内- 四个类: 分别针对DOM和SAX解析的类
- DOM:
DocumentBuilder
解析器类DocumentBuilderFactory
解析器工厂类
- SAX:
SAXParser
解析器类SAXParserFactory
解析器工厂类
跳转到目录
-
DocumentBuilder
- 这是一个抽象类,不能new
- 这个类的实例可以从
DocumentBuilderFactory.newDocumentBuilder()
方法获取 - 解析xml使用
parse("xml文件路径")
方法, 返回Document整个文档, document是一个接口,父节点是Node,如果在document接口中找不到的方法,可以在Node接口中找. - document的方法
getElementsByTagName(String tagname)
返回一个标签集合 NodeListcreateElement(String tagName)
创建一个标签createTextNode(String data)
创建文本appendChild(Node newChild)
把节点添加到标签下removeChild(Node oldChild)
删除节点getParentNode()
获取父节点 - NodeList的方法
getLength()
得到集合的长度item(int index)
下表取到具体的值getTextContent()
得到标签里的内容
-
DocumentBuilderFactory
- 抽象类
- 通过
newInstance()
获取DocumentBuilderFactory的实例.
跳转到目录
// 查询所有name元素的值
private static void selectAll() throws Exception {
// 查询所有name元素的值
/*
* 1. 创建解析器工程
* 2. 根据解析器工厂创建解析器
* 3. 解析xml返回document
*
* */
// 创建解析器工厂
DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
// 创建解析器
DocumentBuilder builder = builderFactory.newDocumentBuilder();
// 解析xml返回document
Document document = builder.parse("src/person.xml");
// 得到name元素
NodeList list = document.getElementsByTagName("name");
// 遍历集合
for (int i = 0; i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?