XML技术

一、XML简介

xml是Extensible Markup Language的缩写,即可扩展标记语言,是一种简单的存储语言,使用一系列简单的标记来描述结构化数据

特点:

  • XML与操作系统、编程语言的开发平台都无关
  • 规范统一,实现不同系统之间的数据交互

XML文档结构

  1. XML声明
  2. 标签
  3. 元素
  4. 根元素
  5. 属性
  6. XML中特殊字符的处理
  7. XML中的注释
  8. 格式良好的文档

XML的应用场景主要体现在以下几点:

  • 数据存储
  • 数据交换
  • 数据配置

二、解析XML概述

      1.DOM

DOM是基于XML的树结构来完成结构解析的。

      2.SAX

SAX是基于事件的解析,它是为了解决DOM解析的资源消耗而出现的。

      3.JDOM

JDOM是针对Java的特定文档模型,它简化了与XML的互交并且比使用DOM更快。

      4.DOM4J

DOM4J是一个非常优秀的Java XML API具有性能优异功能强大和易用的特点,同事它是一个开源库。

使用DOM解析XML时主要使用以下对象:

  • Node对象
  • NodeList对象
  • Document对象
  • Element对象

使用DOM4J操作XML数据

1.读取XML文件,获取Document对象

  • 使用SAXReader:首先,需要创建一个SAXReader对象,然后使用其read方法读取XML文件,从而获得代表整个XML文档的Document对象。这一步是后续操作的基础。
SAXReader reader = new SAXReader();  
Document document = reader.read(new File("input.xml")); // 假设input.xml是你要读取的XML文件名

2.获取根节点

  • 通过Document对象:获取到Document对象后,可以通过调用其getRootElement方法来获取XML文档的根节点。
Element root = document.getRootElement();

3.遍历XML节点

  • 遍历子节点:可以通过根节点或任意其他节点调用elementselementIterator方法来获取其子节点的列表或迭代器,进而遍历这些子节点。
List<Element> elements = root.elements(); // 获取所有直接子节点  
for (Element element : elements) {  
    // 处理每个子节点  
}  
 
// 或者使用迭代器  
for (Iterator<Element> it = root.elementIterator(); it.hasNext();) {  
    Element element = it.next();  
    // 处理每个子节点  
}

4.读取和修改节点数据

  • 读取节点文本:通过调用节点的getText方法来获取节点的文本内容。
String text = element.getText();
  • 修改节点文本:可以直接设置节点的文本内容。
element.setText("新的文本内容");
  • 添加子节点:在指定节点下添加新的子节点。
Element newChild = element.addElement("newNodeName");  
newChild.setText("新节点的文本");
  • 删除节点:通过父节点调用remove方法删除指定的子节点。
parent.remove(child); // child是要删除的节点,parent是其父节点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值