• XML小讲


    • 目录

      引言

      XML概述

      标签的规则

      语法规则

      DOM解析思想

      实例演示

      常见的解析工具


    • 引言

    • 万维网联盟(W3C)创建于1994年,又称W3C理事会
    • 1994年10月在麻省理工学院计算机科学实验室成立
    • 建立者:蒂姆.伯纳斯.李
    • 是Web技术领域最具权威和影响力的国际中立性技术标准机构
    • 到目前为止,W3C已发布了200多项影响深远的Web技术标准及实施指南
    • 如广为业界采用的超文本标记语言HTML(标准通用标记语言下的一个应用)
    • 可扩展标记语言XML(标准通用标记语言下的一个子集)
    • XML概述

    • 是一种可扩展的标记语言
    • 标记语言:
    • 通过标签来描述数据的一门语言(标签有时也叫元素)
    • 可扩展:
    • 标签的名字是可以自定义的
    • 可以理解为:
    • XML文件是由很多标签组成的,而标签名是可以自定义的
    • 作用:
    • 用于进行存储数据和传输数据
    • 作为软件的配置文件
    • 标签的规则

    • 标签必须由一对尖括号和合法标识符组成
    • 如:
    • 标签必须成对出现
    • 特殊的标签可以不成对,但是必须有结束标记
    • 标签中可以定义属性,属性和标签名空格隔开,属性值必须用引号引起来
    • 标签需要正确的嵌套
    • 语法规则

    • XML文件的后缀名为:xml
    • 文档声明必须在第一行第一列
    • version:该属性是必须存在的
    • encoding:该属性不是必须的
    • 意味打开当前xml文件的时候应该是使用什么字符编码表(一般取值都是UTF-8)
    • standalone:该属性不是必须的
    • 描述XML文件是否依赖其它的xml文件,取值为yes/no
    • yes表示独立,no表示不独立会依赖
    • 必须存在一个根标签,有且只能有一个
    • XML文件中可以定义注释信息
    • XML文件中可以存在以下特殊字符
    • 小于 < <
    • 大于 > >
    • 和号 & &
    • 单引号 ' '
    • 引号 " "
    • XML文件可以存在CDATA区
    • DOM解析思想

    • DOM(Document Object Model)文档对象模型
    • 就是把文档的各个组成部分看做成对应的对象
    • 会把xml文件全部加载到内存
    • 在内存中形成一个树形结构,再获取对应的值
    • 实例演示

    • 整个文档会形成一个Document对象,可以直接获取
    • 再获取里面的内容
    • 通过Document对象获取到的就是最外层的根标签,也就是students标签
    • 继续往里获取
    • 通过students标签获取到的就是2个student标签
    • 通过student标签就能获取到它的属性id和子标签name与age
    • 最后就能通过id获取到后面的值,然后通过name标签获取到里面对应的值,通过age标签获取到里面对应的值
    • 是一层一层进入,一层一层解析的过程
    • Document对象:整个xml文档
    • Element对象:所有标签
    • Attribute对象:所有属性
    • Text对象:所有文本内容
    • 其中Element,Attribute和Text它们有一个共同的父类为Node对象
    • 常见的解析工具

    • JAXP:sun公司提供的一套XML的解析的API
    • JDOM:开源组织提供了一套XML的解析的API-jdom
    • DOM4J:开源组织提供了一套XML的解析的API-dom4j
    • pull:主要应用在Android手机端解析XML
  • 相关阅读:
    数仓建模—数据仓库即服务
    Linux 安全 - 扩展属性xattr
    jsp自定义通用分页标签(超详细)
    ASP.NET Core+Vue3 实现SignalR通讯
    03 LaTex之标题页&摘要
    CSS的选择器
    双向TVS的符号及几个参数问题?
    Unity 2022 安装实验性插件-Vector Graphics
    使用CURAND在GPU和CPU上生成随机数的示例
    WPF 截图控件之绘制箭头(五)「仿微信」
  • 原文地址:https://blog.csdn.net/weixin_59624686/article/details/126257464