`
bantouyan
  • 浏览: 147432 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Json与XML

    博客分类:
  • Json
阅读更多

     上研究生时对XML做了相当的学习研究,可惜后来并没有用到,工作后使用ExtJS才开始接触Json,发现Json也是一种不错的数据格式。Json与XML都是基于文本的格式,都可以用来传输和保存数据,不过个人以为,用来传输Json较好,如果做配置文件XML更胜一筹。

      XML的全称是Extensible Markup Language,即可扩展标记语言,它与HTML一样,是SGML(Standard Generalized Markup Language,标准通用标记语言)一种,非常易于阅读和编写。

      Json的全称是JavaScript Object Notation,是一种易于人阅读和编写,同时也易于机器解析与生成的轻量级数据交换格式。它是JavaScript的一个子集,由 文档 RFC4627 定义。

      虽然Json与XML都是基于文本易于阅读和编写的数据交换格式,但Json要简单的多。Json没有XML那么多的概念与规则,所以Json的解析与生成非常容易,编写一个Json库轻而易举(我自己就写了一个),如果要自己写一个XML库,问题就没有那么简单了。也正是XML没有Json那么简单,所以XML功能上要强大的多。

      比较起来,Json与XML的差异主要体现在以下几点:

  1. 注释 :XML可以在文档中加入注释,已增加可读性,但Json没有这方面的便利,RFC4627中根本就没有定义如何注释Json数据。
  2. 有效性验证 :XML可以使用DTD或Schema来保证其内容符合特定的逻辑规则,但Json没有这方面的便利。
  3. 查询支持 :可以使用XPath与XQuery查询XML数据内特定的部分,Json同样没有这方面的便利。
  4. 友好的展示数据 :借助XLT或CSS技术,可以像HTML一样展示XML数据,这点Json也做不到。

      从功能上讲,XML非常强大,这使得XML的解析变得非常复杂,库代码也异常庞大。解析XML要处理元素与属性,区分注释,验证有效性,XML库至少还要再增加上查询支持,所以XML库都异常庞大,编写起来非常困难。

      相对而言,Json不提供注释、有效性验证与查询支持,也不管数据的展示,功能上非常单薄,但这也使得解析Json非常容易,编写Json库也花费不了多少力气。

      由于Json简单,库代码体积也非常小,所以非常适合传输数据。而XML提供了注释功能与有效性验证以及查询技术,更适合作为配置文件的格式。

 

1
2
分享到:
评论
1 楼 sunmoonma 2012-07-18  
非常感谢楼主,果断是好东西。。。。

相关推荐

    JSON与XML转换jar包

    这个"JSON与XML转换jar包"显然是为了帮助开发者在两者之间进行数据格式的转换,以满足不同场景的需求。在实际开发中,有时我们需要将JSON数据解析为XML,或者将XML文档转化为JSON格式,以便在不同的系统或服务之间...

    C#写的Json与Xml互转支持.net framework2.0以上组件Newtonsoft.Json.dll

    本文将深入探讨如何在C#中使用Newtonsoft.Json.dll库进行JSON与XML之间的转换,特别关注对.NET Framework 2.0及以上版本的支持。 Newtonsoft.Json是由James Newton-King开发的流行的JSON库,它提供了丰富的功能,...

    json与xml互相转换工具类

    json与xml互相转换工具类

    C#json与Xml相互转换例子

    本文将深入探讨如何在C#中实现JSON与XML的相互转换,以满足数据传输和存储的需求。 首先,让我们了解一下JSON和XML的基本特性。JSON以其简洁明了的语法赢得了开发者们的喜爱,通常用于网络API的数据交互,因为它的...

    android json与xml解析 例子 demo

    本篇文章将详细探讨Android环境下如何进行JSON与XML的解析,并通过具体的例子和代码演示来加深理解。 一、JSON解析 1. JSON简介: JSON(JavaScript Object Notation)是一种简洁且易于阅读的数据格式,它基于...

    json和xml互转

    **JSON与XML的互转**: 1. **JSON转XML**:将JSON对象转换为XML,通常需要遍历JSON对象的结构,为每个键值对创建相应的XML元素。例如,上面的JSON对象转换为XML可能是: ```xml <key1>value1 <item>1 <item>...

    Testjackson staxon json与xml 转换 源码

    Testjackson项目就是针对这种需求的一个示例,它使用Staxon库和Jackson库来实现JSON与XML的相互转换,并且提供了完整的源码供学习和参考。 首先,Jackson是一个流行的Java库,用于处理JSON数据。它提供了一套全面的...

    jquery.json2xml.js和jquery.xml2json.js

    **jQuery的JSON与XML转换** `jquery.json2xml.js` 脚本允许开发者将JSON对象转换为XML字符串。在JavaScript中,你可以通过创建一个JSON对象,然后调用这个插件的方法,将其转换成XML格式。这样可以方便地将JSON数据...

    json与xml使用

    在安卓中,JSON常用于服务器与客户端之间的数据传输,因为它的结构简洁且解析速度快。例如,以下是一个简单的JSON对象: ```json { "name": "John", "age": 30, "city": "New York" } ``` 安卓提供了内置的`org...

    json简介,json与xml,json-rpc

    json对象,json描述方式,json与xml,json-rpc

    json与xml的区别比较

    json与xml的区别比 较

    json结构数据的生成与解析,json与 xml之间相互转换

    JSONUtils 实现了json结构数据的生成与解析,json与 xml之间相互转换

    json与XML比较[借鉴].pdf

    以下是对JSON与XML在不同方面的比较: 1. **易用性**: - JSON天生就是JavaScript的一个子集,因此在JavaScript环境中解析和生成JSON非常简单,只需要`eval()`函数或JSON对象的`parse()`和`stringify()`方法。 - ...

    jkl-dumper.js和ObjTree.js (json与xml格式转换所用插件 )

    本篇将详细讲解如何利用`jkl-dumper.js`和`ObjTree.js`这两个JavaScript插件来实现JSON与XML之间的格式转换。 首先,`jkl-dumper.js`是一个JavaScript库,主要用于将JavaScript对象转换为可读性强的字符串,便于...

    01.JsonToXml.zip

    本教程将详细讲解如何在Delphi环境中实现JSON与XML之间的转换,这对于软件开发,特别是涉及到跨平台数据交互的项目来说,是非常重要的技能。 标题"01.JsonToXml.zip"暗示了这是一个关于Delphi编程的压缩包,其中...

    JSON-XML相关jar包

    3. JSON与XML的互转: - JSON到XML转换:Java库如`json-simple`或`Jackson`提供API,可以将JSON对象或JSON字符串转换为XML文档。 - XML到JSON转换:同样,通过`jaxb`、`xmlbeans`或`Gson`等库,可以将XML解析为...

    jQuery插件-JSON与XML互转

    支持XML转json; var mySoapXml ='<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" '+ 'xmlns:xsd="http://www.w3.org/2001/XMLSchema" '+ 'xmlns:xsi=...

    javsscript json与xml互相转化

    JSON以其简洁、易于读写和解析的特性,成为了Web服务与客户端交互的主要数据格式。XML则因为其结构化、自描述的特性,广泛用于数据存储和交换。在实际开发中,有时我们需要将JSON转换为XML或将XML转换为JSON,以适应...

    json2XMLjar.rar

    总的来说,"json2XMLjar.rar"提供的库涵盖了从JSON解析、对象映射到XML生成的全过程,对于需要在Java环境中进行JSON与XML数据交换的开发者来说,这是一个非常实用的工具集。通过合理地使用这些库,可以构建高效且...

    json_xml互转jar

    本文将探讨JSON与XML之间的转换,并围绕“json_xml互转jar”这个主题,介绍相关的技术知识。 首先,我们来看JSON。JSON是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,易于人阅读和编写,同时也易于...

Global site tag (gtag.js) - Google Analytics