Volley Gson Json
来源:互联网 发布:ubuntu 锐速 编辑:程序博客网 时间:2024/05/22 12:36
1. JSON(参考资料http://www.w3school.com.cn/json/index.asp)
a.JSON:JavaScript对象表示法(JavaScriptObjectNotation)。
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的索引.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- Volley Gson Json
- Volley Gson Json
- json与gson,volley
- Volley+Gson
- Volley Gson
- Volley+Gson
- Volley学习(二)简封Volley、为Volley请求头体添加Json参数、Gson和JsonObject生成Json数据、Gson解析返回的Json
- 【android】利用volley+Gson POST json请求来接收jsonObject并解析json数据
- Json----gson
- Json & Gson
- json & gson
- gson json
- GSON@JSON
- android与服务器交互总结(json,post,xUtils,Volley,Gson)
- [Android | 小代码] 天气预报 简易Demo json解析数组+对象 Gson+Volley简单使用
- Volley源码分析之自定义GsonRequest(带header,coockie,Json参数,Gson解析)
- Volley+Gson解析json绑定到litview遇到空指针,求大神帮助
- android与服务器交互总结(json,post,xUtils,Volley,Gson)
- 根据用户坐标返回用户地理位置,并且统计用户
- Linux 下curl模拟Http 的get or post请求
- Vim中复制粘贴缩进错乱问题的解决方案
- 如何解决XMLHttpRequest cannot load file~~~~~~~Origin 'null' is therefore not allowed access
- 浅谈智能卡加密芯片在智能设备领域的技术运用
- Volley Gson Json
- ERROR 1054 (42S22): Unknown column 'plugin' in 'mysql.user'
- Golang和Erlang的IO调度浅析
- Android Asynchronous Http Client-Android异步网络请求客户端接口
- scala 常量、变量、方法、类的定义(与java的不同)
- stm32_窗口看门狗
- MYSQL日期函数
- Golang和Erlang消息传递机制对比
- activeMQ 示例