主要的数据交换格式XML与JASON
数据交换格式就像两个人在聊天一样,采用彼此都听得懂的语言。其中的语言就相当于通信中的数据交换格式。数据交换格式主要分为纯文本格式,XML格式和JSON格式,其中纯文本格式是一种简单的,无格式的数据交换方式。
例如:我们用纯文本格式描述留言条,可以按照如下的形式:
“小A同学”,“你好!\n今天上午,我想到你家里借一本书,可是你不在,我下午再来”,“小B”,“2017年7月2日”
留言条中的4部分数据按照顺序存放,各个部分之间用逗号分隔。数据量小的时候,可以采用这种格式。但是随着数据量的增加,问题也会暴露出来,我们可能搞乱它们的顺序,如果各个数据部分能有描述信息就好了。而XML格式和JSON格式可以带有信息描述,她们叫做“自描述的”结构化文档。
将上面的留言条学成XML格式,具体如下:
<?xml version="1.0" encoding="UTF-8"?>
<note>
<to>小A同学</to>
<content>你好!\n今天上午,我想到你家里借一本书,可是你不在,我下午再来</content>
<from>小B</from>
<date>2017年7月2日</date>
</note>
我们看到位于尖括号中的内容(<to>...</to>等)就是描述数据的标识,在XML中称为“标签”。
将上面的留言条学成JSON格式,具体如下:
{to:"小A同学",content:"你好!\n今天上午,我想到你家里借一本书,可是你不在,我下午再来",from:"小B",date:"2017年7月2日"}
数据放置在大括号{}之中,每个数据项目之前都有一个描述名字(如to等),描述名字和数据项目之间用冒号分开。
可以发现,一般来讲,JSON所用的字节数要比XML烧,因此JSON也被称为“轻量级”的数据交换格式。
XML文档结构
XML文档的基本架构可以分为下面几部分:
(1)声明:<?xml version="1.0" encoding="UTF-8"?>就是XML文档的声明,它定义了XML文件的版本和使用的字符集。
(2)根元素:根元素只有一个,开始标签和结束标签必须一致。如上面的<note>
(3) 子元素:前面的to,content,from和date都是子元素
(4)属性:属性定义在开始标签中。如<note id="1">
(5) 命名空间:用于为XML文档提供名字唯一的元素和属性。以xmlns:开头的内容都属于命名空间。
(6)限定名:它是由命名空间引出的概念,定义了元素和属性的合法标识符。
解释XML文档
XML文档操作有“读”与“写”,读入XML文档并分析的过程称为“解析”。解析XML文档时,目前有两种流行的模式:SAX和DOM。SAX是一种基于事件驱动的解析模式。解析XML文档时,程序从上到下读取XML文档,如果遇到开始标签,结束标签和属性等,就会触发相应的事件。但是只能读取XML文档,不能写入XML文档,而优点就是解析速度快。
DOM模式将XML文档作为一棵树状结构进行分析,获取节点的内容以及相关属性,或是新增,删除和修改节点的内容。如果文档比较大,解析速度会比较慢。
主要的数据交换格式XML与JASON相关推荐
- 于数据交换格式XML和JSON的比较
目前,在web开发领域,主要的数据传输格式有XML和JSON,对于XML相信每一个web developer都不会感到陌生:相比之下,JSON可能对于一些新步入开发领域的新手会感到有些陌生,也可能你之 ...
- Ajax--概述、xhr对象的常用属性和方法、xhr的常用事件、xhr对象发送POST请求、xhr对象发送GET请求、xhr对象的兼容性问题、数据交换格式(XML、JSON)
一.概述 1.1 发展历程 在开始之前先来看一下Ajax的工作原理吧,如下图所示: Ajax全称Asynchronous javascript and xml(异步 JavaScript 和 XML) ...
- 前端与服务器通讯的数据交换格式XML 、JSON
数据交换格式 就是服务器端与客户端之间进行数据传输与交换的格式. 前端领域,经常提及的两种数据交换格式分别是XML(使用较少)和JSON(主要) XML XML和HTML的区别 都是标记语言,但是,他 ...
- XML和JSON 数据交换格式
为什么80%的码农都做不了架构师?>>> 一.什么是数据交换格式? 客户端与服务器常用数据交换格式xml.json.html 二.数据交换格式应用场景 移动端(安卓.IOS)通 ...
- XML和JSON两种数据交换格式的比较
目前,在web开发领域,主要的数据交换格式有XML和JSON,对于XML相信每一个web developer都不会感到陌生: 相比之下,JSON可能对于一些新步入开发领域的新手会感到有些陌生,也可能你 ...
- 数据交换格式与SpringIOC底层实现
课程目标 XML和JSON Java反射机制 手写SpringIOC 什么是数据交换格式 客户端与服务器常用数据交换格式xml.json.html 数据交换格式用场景 移动端(安卓.IOS)通讯方式采 ...
- Java 数据交换格式反射机制SpringIOC原理分析
数据交换格式&反射机制&SpringIOC原理分析 什么是数据交换格式? 数据交换格式使用场景 JSON简单使用 什么是JSON? JSON格式的分类 常用JSON解析框架 使用fas ...
- xml的数据交换以及xml和json数据交换的比较
一.什么是Web Service ? Web Services 是有企业发布的完成其特定商务需求的在线应用服务,其他公司或应用软件能够通过internet来访问并使用这项在线服务 WebServicc ...
- 数据交换格式Json与XML
什么是数据交换格式: 主流的有Json.XML.HTML. 数据交换格式的应用场景: 移动端(安卓,IOS)通讯方式采用http协议+Json格式的restful风格. 很多互联网公司都是用Http协 ...
最新文章
- Paper:《Hidden Technical Debt in Machine Learning Systems—机器学习系统中隐藏的技术债》翻译与解读
- lucene 增加相关性_事务性Lucene
- LeetCode 167. Two Sum II - Input array is sorted
- java class 内容查看_015-JVM-使用javap查看class文件内容
- 计算机二级c语言考点变化,计算机二级C语言考点归纳汇总.doc
- 用Java实现Md5加密工具类
- Seek 策略以及在有 B 帧情况下的处理
- 番茄花园洪磊,究竟错在哪里?
- Day215.课程详细页面功能完善、Echarts统计分析模块[生成统计数据+生成图表]前后端整合 -谷粒学院
- TC275——04Blinky-LED
- C语言中宏定义宏编译的使用#if,#ifdef,#ifndef,#elif,#else,#endif,defined使用详解,可以实现和if else一样的效果
- 为啥中国移动免费宽带突然不香了, 背后的猫腻,你知道吗?
- 【bzoj4146】 [AMPPZ2014]Divisors
- 【Python】详解 逻辑运算符 (and / or / not) + 布尔逻辑 (bool)
- Win7 VS2017编译magnum及例子
- SpringBoot搭建SSM框架项目,支持JSP页面
- 爬虫概念与编程学习之如何爬取视频网站页面(用HttpClient)(二)
- ORACLE 11g新特性中文版
- 全国计算机a类高等学校,全国最强专业都在这里:高校A类学科数量及排名
- 随手一写就是一个侧滑关闭activity