Volley Gson Json
2015-08-18 15:05
671 查看
1. JSON(参考资料http://www.w3school.com.cn/json/index.asp)
a.JSON:JavaScript
对象表示法(JavaScript
Object Notation)。
JSON 是存储和交换文本信息的语法。类似 XML。
JSON 比 XML
更小、更快,更易解析。
JavaScript程序能够使用内建的eval()函数,用 JSON 数据来生成原生的JavaScript 对象
b.
JSON语法规则
JSON 语法是 JavaScript 对象表示法语法的子集。
· 数据在名称/值对中
· 数据由逗号分隔
· 花括号保存对象
· 方括号保存数组
c.JSON名称/值对
JSON 数据的书写格式是:名称/值对。名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值:
"firstName" : "John"
这很容易理解,等价于这条JavaScript 语句:
firstName = "John"
d.json值
JSON 值可以是:
· 数字(整数或浮点数)
· 字符串(在双引号中)
· 逻辑值(true 或 false)
· 数组(在方括号中)
· 对象(在花括号中)
· null
e.json对象
JSON 对象在花括号中书写:对象可以包含多个名称/值对:
{ "firstName":"John" ,"lastName":"Doe" }
f.json数组
JSON 数组在方括号中书写:数组可包含多个对象:
{
"employees": [
{ "firstName":"John" ,"lastName":"Doe" },
{ "firstName":"Anna" ,"lastName":"Smith" },
{ "firstName":"Peter" ,"lastName":"Jones" }
]
}
在上面的例子中,对象"employees" 是包含三个对象的数组。每个对象代表一条关于某人(有姓和名)的记录。
g.json文件
· JSON 文件的文件类型是 ".json"
· JSON 文本的 MIME 类型是 "application/json"
h.
实例比较
· XML和JSON都使用结构化方式来表示数据
· 用XML表示中国部分省市数据如左图,Json格式如右图:
· 编码的可读性,xml有明显的优势,毕竟人类的语言更贴近这样的说明结构。json读起来更像一个数据块,读起来就比较费解了。不过,我们读起来费解的语言,恰恰是适合机器阅读,所以通过json的索引.province[0].name就能够读取“黑龙江”这个值。
· 编码的手写难度来说,xml还是舒服一些,好读当然就好写。不过写出来的字符JSON就明显少很多。去掉空白制表以及换行的话,JSON就是密密麻麻的有用数据,而xml却包含很多重复的标记字符。
2. GSON(参考资料https://code.google.com/p/google-gson/)
目的:实现JavaObject与Json的转换。 序列化toJson()
and 反序列化fromJson()
例子1:
Gson gson = new Gson(); // Or use newGsonBuilder().create();
MyTypetarget = new MyType();
Stringjson = gson.toJson(target); // serializes target to Json
MyTypetarget2 = gson.fromJson(json, MyType.class); // deserializes json into target2
例子2:
http://www.cnblogs.com/haippy/archive/2012/05/20/2509329.html
a.JSON:JavaScript
对象表示法(JavaScript
Object Notation)。
JSON 是存储和交换文本信息的语法。类似 XML。
JSON 比 XML
更小、更快,更易解析。
JavaScript程序能够使用内建的eval()函数,用 JSON 数据来生成原生的JavaScript 对象
b.
JSON语法规则
JSON 语法是 JavaScript 对象表示法语法的子集。
· 数据在名称/值对中
· 数据由逗号分隔
· 花括号保存对象
· 方括号保存数组
c.JSON名称/值对
JSON 数据的书写格式是:名称/值对。名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值:
"firstName" : "John"
这很容易理解,等价于这条JavaScript 语句:
firstName = "John"
d.json值
JSON 值可以是:
· 数字(整数或浮点数)
· 字符串(在双引号中)
· 逻辑值(true 或 false)
· 数组(在方括号中)
· 对象(在花括号中)
· null
e.json对象
JSON 对象在花括号中书写:对象可以包含多个名称/值对:
{ "firstName":"John" ,"lastName":"Doe" }
f.json数组
JSON 数组在方括号中书写:数组可包含多个对象:
{
"employees": [
{ "firstName":"John" ,"lastName":"Doe" },
{ "firstName":"Anna" ,"lastName":"Smith" },
{ "firstName":"Peter" ,"lastName":"Jones" }
]
}
在上面的例子中,对象"employees" 是包含三个对象的数组。每个对象代表一条关于某人(有姓和名)的记录。
g.json文件
· JSON 文件的文件类型是 ".json"
· JSON 文本的 MIME 类型是 "application/json"
h.
实例比较
· XML和JSON都使用结构化方式来表示数据
· 用XML表示中国部分省市数据如左图,Json格式如右图:
<?xml version="1.0" encoding="utf-8"?> <country> <name>中国</name> <province> <name>黑龙江</name> <cities> <city>哈尔滨</city> <city>大庆</city> </cities> </province> <province> <name>广东</name> <cities> <city>广州</city> <city>深圳</city> <city>珠海</city> </cities> </province> <province> <name>台湾</name> <cities> <city>台北</city> <city>高雄</city> </cities> </province> <province> <name>新疆</name> <cities> <city>乌鲁木齐</city> </cities> </province> </country> |
{ "name": "中国", "province": [{ "name": "黑龙江", "cities": { "city": ["哈尔滨", "大庆"] } }, { "name": "广东", "cities": { "city": ["广州", "深圳", "珠海"] } }, { "name": "台湾", "cities": { "city": ["台北", "高雄"] } }, { "name": "新疆", "cities": { "city": ["乌鲁木齐"] } }] } |
· 编码的手写难度来说,xml还是舒服一些,好读当然就好写。不过写出来的字符JSON就明显少很多。去掉空白制表以及换行的话,JSON就是密密麻麻的有用数据,而xml却包含很多重复的标记字符。
2. GSON(参考资料https://code.google.com/p/google-gson/)
目的:实现JavaObject与Json的转换。 序列化toJson()
and 反序列化fromJson()
例子1:
Gson gson = new Gson(); // Or use newGsonBuilder().create();
MyTypetarget = new MyType();
Stringjson = gson.toJson(target); // serializes target to Json
MyTypetarget2 = gson.fromJson(json, MyType.class); // deserializes json into target2
例子2:
http://www.cnblogs.com/haippy/archive/2012/05/20/2509329.html
相关文章推荐
- volley JSON请求数据
- JS禁止浏览器后退键
- a中调用js的几种方法
- json_encode处理中文乱码
- Extjs按钮的隐藏、显示、禁用,启用,去除加载朦层
- 用.net dynamic实现对JSON文件的读写操作
- 第6章 JSP内建对象讲解及实例讲解
- JSON jar包版本问题
- vs2010 javascript代码拓展插件支持代码折叠
- javascript 基础1第11节
- jsp 说明标签
- Jsp页面上传图片浏览器兼容问题
- js+css实现上下翻页相册代码分享
- json转字符串
- javascript实现图片上传前台页面
- json字符串与json对象互相转化
- JavaScript高级程序设计笔记(7)
- javascript Date
- JS监听页面刷新或关闭事件
- javascript 模式(1)——代码复用