xml与json

本文介绍了XML的基本概念、特性,包括其作为网络数据传输、数据存储和配置文件的角色。同时,文章详细讲解了XML的语法格式,如文档声明、元素、属性、注释等,并提到了DOM4J解析XML的方法。此外,文章还简单介绍了JSON,阐述了JSON的格式、用途和常见的转换方式,如GSON和FastJson。
摘要由CSDN通过智能技术生成

XMl与JSON

XML

简介

可扩展标记语言(extensible Markup Language)

特性

1、xml具有平台无关性,是一门独立的标记语言

2、xml具有自我描述性

3、xml可以做什么?

  • 网络数据传输

  • 数据存储

  • 配置文件

4、什么是XML文件

  • 保存xml数据的一种方式,

  • 当然其也可以以其他方式存在(如在内存中构建xml数据)

  • 但xml语主并不仅仅是xml文件

5、xml语法格式

1)、xml文档声明

​ <?xml version="1.0" encoding="UTF-8"?>

2)、xml文档由标记组成,标记也称为:元素、标签、节点

​ 语法:

​ 开始标记(开放标记)<标记名称>

​ 结束标记(闭合标记)</标记名称>

​ 标记命名规则:

​ 名称可以包含字母、数字以及其它字符

​ 名称不能以数学、标点符号、xml、XML、Xml开始

​ 名称不能包含空格和冒号(:)

​ 名称区分大小写

​ 说明:

​ 开始与结束标记之间,为标记的内容。

​ 示例:

​ <name>mary</name>

3)、一个xml文档中,必须有且仅有一个根标记

​ 示例:

<names>
​
        <name>张三</name>
​
             <name>李四</name>
​
</names>
​

4)、标识可以嵌套但不允许交叉

​ 示例:

<names>
​
        <name>张三 <age></name>
​
             <age>李四</age>
​
    </names>
​

5)、标记层级称呼(父标记、子标记、祖先标记、后代标记)

​ 按层级,上级是下级的父或祖先,下级是上级的子或后代

6)、标记名称允许重复

7)、标记还有属性,属性写在开始标记里,与标记名称以空格分隔,

​ 可有多个属性,属性之间以空格分隔,但同一标记中属性不能重名,

​ 可以包含0-n个必属性,每一下属性都是一个键值对,键与值之间用等号连接,

​ 属性值由引号引住。

8)、注释格式及使用注意事项

​ 注意事项:

​ 注释不能写在到文档声明前

​ 注释不能嵌套

​ 格式:

​ 注释开始:<!--

​ 注释结束:-->

​ 快捷键:

​ eclipse中编辑Java文件时,注释取消注释的快捷键都是: "CTRL + / "

​ 编辑xml文件时,注释:CTRL + SHIFT + / 取消注释**:CTRL + SHIFT + \

9)、CDATA(了解)

​ CDATA是不应该由xml解析器解析的文本数据,如<(新元素的开始),&(字符实体的开始)

当做为普通字符写在xml中,都是非法的,为了避免这种错误,可以将脚本代码定义为CDATA中,

其中所有内容都会被解析器忽略,格式为:CDATA部分由"<![CDATA["开始,由"]]>",结束。

10)、示例

<?xml version="1.0" encoding="UTF-8"?>
<books>
       <book>
              <name id="1001">金苹果</name>
              <info>描述了种金苹果的辛苦历程</info>
       </book>
       <book>
              <name id="1002">银苹果</name>
              <info>描述了种银苹果的辛苦历程</info>
       </book>
</books>

6、DOM4J解析XML(掌握)

​ 1)、步骤

  • 引入jar文件dom4j.jar

  • 创建一个指向xml文件的输入流

FileInputStream fis = new FileInputStram("xml文件地址");
  • 创建一个xml读取工具对象

SAXReader sr = new SAXReader();
  • 使用读取工具对象,读取xml文档的输入流,并得到文档对象

Document doc = sr.read(fis);
  • 使用文档对象,读取xml文档中根元素对象

Element root = doc.getRootElement();
  • 若xml文件中出现拼写错误 ,则会报如下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值