JSON与XML解析

  • 什么是JSON 、XML?

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

JSON(JavaScript Object Notation)一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。可在不同平台之间进行数据交换。JSON采用兼容性很高的、完全独立于语言文本格式,同时也具备类似于C语言的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)体系的行为。这些特性使JSON成为理想的数据交换语言。
JSON基于JavaScript Programming Language , Standard ECMA-262 3rd Edition - December 1999 的一个子集。

一句话总结:JSON和XML都是数据交换格式,JSON轻量级的数据交换格式、XML标记电子文件使其具有结构性的标记语言。

XML的优点

  1. 格式统一,符合标准;
  2. 容易与其他系统进行远程交互,数据共享比较方便。

XML的缺点

  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格式能直接为服务器端代码使用,大大简化了服务器端和客户端的代码开发量,且完成任务不变,并且易于维护

JSON的缺点:

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

总结:

  • XML它是用于RPC远程调用数据交换格式,因为XML文件格式复杂,比较占宽带,不易于维护,服务器端与客户端解析xml话费较多的资源和时间.
  • JSON它是用于RPC远程调用数据交换格式,因为JSON文件格式压缩,占宽带小,易于维护。

为什么用JSON不用XML?

json是轻量级,xml是重量级。因为xml是重量级的,文件格式复杂,所以在远程调用时,比较占宽带。 json因为是轻量级,文件格式都是压缩的,占宽带小。

JSON、XML解析有哪些方式?

  1. JSON解析方式(阿里巴巴fastjson、谷歌gson,jackJson)
  2. XML解析方式(dom、sax、pul)

JSON、XML应用场景?

  1. 一般现在移动APP接口都采用JSON,因为json占宽带小。
  2. 公司对外接口,都是JSON格式的。
  3. JSON和XML都是在远程调用或者是和某公司合作定义数据交换格式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值