JSON数据格式学习笔记

详细信息见:JSON官网http://www.json.org/

JSON 基本定义

l  JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)

l  JSON 是轻量级的文本数据交换格式

l  JSON 独立于语言 *

l  JSON 具有自我描述性,更易理解

 JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。

 

JSON基本语法:

l  数据在名称/值对中

l  数据由逗号分隔

l  花括号保存对象(花括号可以理解为一个容器)

l  方括号保存数据

JSON的值可以是:

·        数字(整数或浮点数)

·        字符串(在双引号中)

·        逻辑值(true或 false)

·        数组(在方括号中)

·        对象(在花括号中)

·        null

JSON 对象

·        JSON 对象在花括号中书写:

·        对象可以包含多个名称/值对:

{ "firstName":"John" ,"lastName":"Doe" }

JSON 数组

·        JSON 数组在方括号中书写:

·        数组可包含多个对象:

{

"employees": [

{ "firstName":"John" ,"lastName":"Doe" },

{ "firstName":"Anna" ,"lastName":"Smith" },

{ "firstName":"Peter" ,"lastName":"Jones" }

]

}

在上面的例子中,对象 "employees" 是包含三个对象的数组。每个对象代表一条关于某人(有姓和名)的记录。

JSON 文件

·        JSON 文件的文件类型是 ".json"

·        JSON 文本的 MIME 类型是 "application/json"

 

JSON与XML区别:

l XML里在元素的开始和结尾处有尖括号和标签名:JSON使用花括号,而且只在数据的开始和结束时使用。

l JSON更简练。

l JSON可以在JavaScript里简单的传递到eval()方法里使用

l JSON里有数组{每个元素没有自己的名称}

l 在XML里可以对一个元素使用任意想要的名称,在JSON里不能使用Javascript里的保留字

JAVA解析JSON:

1、JSON-java最重要的类有三个。

JSONObject : 包装一个map。用来表示一个{k:v,k2:v2,k3:[1,2]}形式的json数据

JSONArray :包装一个ArrayList。用来表示一个[1,2,{k:v}]形式的json数据

JSONTokener:包装一个Reader。用来存储、读取、操作一个表示JSON数据的字符串

2、原理

1、JSONObject和JSONArray都可以用一个JSONTokener作为构造参数去实例化。

2、解析时可能会产生多个JSONObject或者JSONArray。但是他们都是操作同一个JSONTokener。

3、JSONObject和JSONArray可以分别通过JSONTokener提供的方法解析出对方。可以实现嵌套。

参考:http://www.w3school.com.cn/json/

   http://www.json.org/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值