XML vs JSON 浅析

XML vs JSON 浅析

结构对比

XML

<courses>
    <course>
        <id>0001</id>
        <name>Operating System</name>
        <pic>0001.png</pic>
        <count>20</count>
        <content>有关操作系统的基础知识课程</content>
    </course>
    .....
</courses>

JSON

{
     “name”:”A”,
      “age”:30 ,
      “address”:
     {
          “city”:”Beijing",
          “street”:”Chaoyang",
          “postcode”:10025
     }
}

JSON数组的表示方式:

[{json对象},{json对象}]

定义

  • XML (eXtensible Markup Language) 可扩展标记语言。是一种用于标记电子文件使其具有结构性的标记语言。标记是指计算机能理解的信息符号,可以用于标记数据,定义数据类型等等,XML允许用户根据自己情况自定义标签及其语义。
  • JSON(JavaScript Object Notation) JavaScript对象表示法。是一种轻量级的数据交换格式,语法简易,语法规则如下:
    • 数据在键值对中
    • 数据由逗号分隔
    • 花括号保存对象
    • 方括号保存数组

优缺点对比

XML

优点
  • 格式统一,符合规范。XML由严格的标签定义,每组标签都是按照<xxx>开始<\xxx>结束
  • 可扩展性强,可以利用自定标签呈现任意的数据对象
  • 处理复杂结构表现优异
    • 数据表示上,可以利用多级标签清晰的呈现复杂结构的数据对象,即树的结构,且树已经有很多成熟的处理算法
    • 数据解析上,XML常用的解析方法之一的SAX提供了事件驱动的处理方式,可以将一篇巨大的XML一点点呈现,不必一次性全部读入内存,而JSON必须要一次读入,这样对大数据的处理并不合适
  • 广为流传,深入人心
    • 这也是缺点,导致了XML的大量的误用和滥用。如移动端的数据传输,滥用XML会造成流量浪费
缺点
  • 体积庞大,传输占用流量较多
  • 解析不如JSON速度,要考虑各种各样的标签以及它们之间的父子关系
  • 由于不同的解析方式,可能会产生大量的代码重复以适应多种解析方式

JSON

优点
  • 轻量级格式,体积小,传输省流量
  • 解析速度快
  • 支持Java,PHP等多种语言,便于服务器端解析。JSON格式能够直接为服务器端代码使用, 大大简化了服务器端和客户端的代码开发量
缺点
  • 对复杂数据对象描述能力较弱,Json在描述复杂数据对象时,大量的括号以及‘@’,‘#’等符号降低了可读性
  • 推广程度不如XML久远

选择建议

  • 在互联网数据传输中,如移动端和服务器间交互,可以考虑使用Json,节约流量
  • 描述复杂数据对象时,建议使用XML;简单的数据对象可以使用Json
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值