JSON数据格式

     JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用彻底独立于语言的文本格式,可是也使用了相似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。javascript

 

 JSON 语法是 JavaScript 对象表示法语法的子集。html

  • 数据在名称/值对中:名称是字符串,使用双引号表示。值能够是:数字(整数或浮点数),字符串(在双引号中),数组(在方括号中),对象(在花括号中),true/false/null。
  • 数据由逗号分隔:
  • 花括号保存对象:对象能够包含各类数据,包括数组。
  • 方括号保存数组:数字能够包含对象。
    JSON建构有两种结构
    json简单说就是javascript中的对象和数组,因此这两种结构就是对象和数组两种结构,经过这两种结构能够表示各类复杂的结构
   一、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,...}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,因此很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型能够是 数字、字符串、数组、对象几种。
   二、数组:数组在js中是中括号“[]”括起来的内容,数据结构为 [“java”,"javascript","vb",...],取值方式和全部语言中同样,使用索引获取,字段值的类型能够是 数字、字符串、数组、对象几种。
  通过对象、数组2种结构就能够组合成复杂的数据结构了.
      若是JSON中含有转义字符,则须要转义。例如文件路径中须要使用"\\"而不是"\"。例如:{ "file":"C:\\a.txt"}。
   
     好比说有一个JSON对象
     能够获得他的字符串:
string testJson = "{\"Name\" : \"战神\",\"sex\" : [\"男\",\"女\",\"人妖\"],\"Education\":{\"GradeSchool\" : \"第一小学\",\"MiddleSchool\" : [\"第一初中\" , \"第一高中\"], \"University\" :{ \"Name\" : \"哈佛大学\", \"Specialty\" : [\"一年级\",\"二年级\"]}}}";

    这个JSON对象的结构是:java

 

 

JSON的在线编辑有:http://www.sojson.com/editor.htmljson

BeJson:能够实现XML和JSON的相互转化数组

JSON和XML的比较数据结构

可读性工具

JSON和XML的可读性可谓不相上下,一边是简易的语法,一边是规范的标签形式,很难分出胜负。编码

可扩展性spa

XML天生有很好的扩展性,JSON固然也有,没有什么是XML能扩展,而JSON却不能。不过JSON在Javascript主场做战,能够存储Javascript复合对象,有着xml不可比拟的优点。3d

编码难度

XML有丰富的编码工具,好比Dom4j、JDom等,JSON也有提供的工具。无工具的状况下,相信熟练的开发人员同样能很快的写出想要的xml文档和JSON字符串,不过,xml文档要多不少结构上的字符。

相关文章
相关标签/搜索