Json vs Xml

两者的共同优点是都是文本表示的数据格式,可以跨平台、跨系统交换数据

就可读性和可扩展性而言,JSON和XML不相上下。

就编码难度而言,JSON略比XML简单,要写好XML最好还是借助XML编辑器,标签的嵌套和配对手动输入来说容易出错。因此,从代码的可维护性角度而言,JSON优于XML。

就内容解析而言,JSON在客户端只要使用eval()便可完成解析,在服务器端有包括ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, Ruby等语言的解析支持,非常简单;而XML则相对复杂,不管在服务器端还是在客户端都需要花费大量的代码来实现解析。

就数据表示和传输性能而言,JSON明显比XML简洁,格式简单,占用带宽少。

就安全性而言,由于大部分Javascript库都是使用eval()来解析数据,存在执行恶意JSON数据的安全漏洞;当然可以使用专门的JSON解析器来避免这个问题。相比,XML更安全一些。

[ XML ]
使用XML作为传输格式的优势:
1. 格式统一, 符合标准。
2. 容易与其他系统进行远程交互, 数据共享比较方便
3.调用将 XML 用作传输的现有服务。
4.使用 XSLT 可以动态转换 XML。这是企业服务总线 (ESB) 方案中的理想功能。

缺点:
1. XML文件格式文件庞大, 格式复杂, 传输占用带宽。
2. 服务器端和客户端都需要花费大量代码来解析XML, 不论服务器端和客户端代码变的异常复杂和不容易维护。
3. 客户端不同浏览器之间解析XML的方式不一致, 需要重复编写很多代码。
4. 服务器端和客户端解析XML花费资源和时间。

[ JSON ]
优点:
1. 数据格式比较简单, 易于读写, 格式都是压缩的, 占用带宽小,浏览器解析快。
2. 易于解析这种语言, 客户端JavaScript可以简单的通过eval()进行JSON数据的读取。
3. 构造友好,支持多种语言, 包括ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, Ruby等语言服务器端语言, 便于服务器端的解析。
4. 在PHP世界, 已经有PHP-JSON和JSON-PHP出现了, 便于PHP序列化后的程序直接调用. PHP服务器端的对象、数组等能够直接生JSON格式, 便于客户端的访问提取。
5. 因为JSON格式能够直接为服务器端代码使用, 大大简化了服务器端和客户端的代码开发量, 但是完成的任务不变, 且易于维护。
6.相当稳定,JSON 的附加内容将成为超集。

缺点:
1. 没有XML格式这么推广的深入人心和使用广泛, 通用性没有XML好。
2. JSON格式目前在Web Service中的推广还属于初级阶段。

时间: 2024-10-12 13:17:05

Json vs Xml的相关文章

JSON 和 XML 优缺点的比较

JSON 和 XML 优缺点的比较 1.JSON定义(JavaScript Object Notation) 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.可在不同平台之间进行数据交换.JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为. 2.XML定义 扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. XM

JSON与XML的区别比较

(1).XML定义 扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. XML使用DTD(document type definition)文档类型定义来组织数据;?格式统一,跨平台和语言,早已成为业界公认的标准. XML是标准通用标记语言 (SGML) 的子集,非常适合 Web 传输.XML 提供统一的方法来描述和交换独立于应用程序或供应商

转 JSON与XML转换

这两天处理模块的联调工作,在json与XML转换中出现了一些奇怪的问题,仔细究来,实为对org.json.*包知之太少.晚上baidu.google一下,找出了问题出现的原因.在模块中,使用了两个方法,xml2Json()和json2Xml(),主要的问题就出在这两个方法的具体实现上.XML与JSON相互转换的Java类在org.json.*包中常用的有XML.java和JSONML.java,前一半时间花在了json格式与XML生成格式的验证上,json数据串格式没有错,只是在转换的时候需要在

JSON和XML

n网络 JSON和XML niOS学院 n李明杰 nJSON n什么是JSON pJSON是一种轻量级的数据格式,一般用于数据交互 p服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除外) p nJSON的格式很像OC中的字典和数组 {"name" : "jack", "age" : 10} {"names" : ["jack", "rose", "jim

iOS开发——网络Swift篇&JSON与XML数据解析

JSON与XML数据解析 JSON数据解析(内置NSJSONSerialization与第三方JSONKit) 一,使用自带的NSJSONSerialization 苹果从IOS5.0后推出了SDK自带的JSON解决方案NSJSONSerialization,这是一个非常好用的JSON生成和解析工具,效率也比其他第三方开源项目高. NSJSONSerialization能将JSON转换成Foundation对象,也能将Foundation对象转换成JSON,但转换成JSON的对象必须具有如下属性

JSON-lib框架,转换JSON、XML不再困难

Json-lib可以将Java对象转成json格式的字符串,也可以将Java对象转换成xml格式的文档,同样可以将json字符串转换成Java对象或是将xml字符串转换成Java对象. 一. 准备工作    1. 首先要去官方下载json-lib工具包 下载地址: http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-2.4/ 目前最新的是2.4的版本,本示例中使用的是v2.3:json-lib还需要以下依赖包: jak

iOS-数据持久化基础-JSON与XML数据解析

解析的基本概念 所谓“解析”:从事先规定好的格式串中提取数据 解析的前提:提前约定好格式.数据提供方按照格式提供数据.数据获取方按照格式获取数据 iOS开发常见的解析:XML解析.JSON解析 一.XML数据结构 解析的基本概念 所谓“解析”:从事先规定好的格式串中提取数据 解析的前提:提前约定好格式.数据提供方按照格式提供数据.数据获取方按照格式获取数据 iOS开发常见的解析:XML解析.JSON解析 XML数据结构 XML解析SAX?方式解析从上往下,?一点?一点读取性能好苹果推荐使?用DO

JSON和XML的关系

0.题外话 我相信任何一个和web打交道的程序员(尤其是前端工程师们),在初次与XML邂逅时,是完全不明白它是干嘛的.而又到了后来被安排与JSON相亲时,也是糊里糊涂的. 什么,不对么?好吧,至少,上文是我自己的亲身经历.在我实习时参与的第二个项目中,我被要求使用异步请求向服务器拿取一段JSON数据.通过浏览器的控制台,我查看服务器返回的结果,我还记得,那一刻我心中惊呼“what's that crap”. 而对于异步请求,那时候我只懂得单纯地使用jQuery库的$.ajax()方法,而到后来,

网络json 和xml 接口

免费JSON格式的服务接口 各种常用的JSON接口 网络json 和xml 接口,码迷,mamicode.com

JSON 和 XML的类比

JSON和XML的类比 (1).XML的优缺点 <1>.XML的优点 A.格式统一,符合标准: B.容易与其他系统进行远程交互,数据共享比较方便. <2>.XML的缺点 A.XML文件庞大,文件格式复杂,传输占带宽: B.服务器端和客户端都需要花费大量代码来解析XML,导致服务器端和客户端代码变得异常复杂且不易维护: C.客户端不同浏览器之间解析XML的方式不一致,需要重复编写很多代码: D.服务器端和客户端解析XML花费较多的资源和时间. (2).JSON的优缺点<1>