Android 使用GSON解析JSON 并转换为JAVA对象
来源:互联网 发布:淘宝网论文降重可靠吗 编辑:程序博客网 时间:2024/05/17 06:16
关于JSON的介绍(摘自:http://www.oschina.net/p/google-json):
Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。
示例代码:
Gson gson = new Gson();
int[] ints = {1, 2, 3, 4, 5};
String[] strings = {"abc", "def", "ghi"};
(Serialization)
gson.toJson(ints); ==> prints [1,2,3,4,5]
gson.toJson(strings); ==> prints ["abc", "def", "ghi"]
获取到的JSON数据如下:
{"data":[{"area_id":3,"parent_id":2,"area_name":"\u4e1c\u57ce\u533a","sort":99},{"area_id":19,"parent_id":2,"area_name":"\u5bc6\u4e91\u53bf","sort":99},{"area_id":18,"parent_id":2,"area_name":"\u5e73\u8c37\u533a","sort":99},{"area_id":17,"parent_id":2,"area_name":"\u6000\u67d4\u533a","sort":99},{"area_id":16,"parent_id":2,"area_name":"\u5927\u5174\u533a","sort":99},{"area_id":15,"parent_id":2,"area_name":"\u660c\u5e73\u533a","sort":99},{"area_id":14,"parent_id":2,"area_name":"\u987a\u4e49\u533a","sort":99},{"area_id":13,"parent_id":2,"area_name":"\u901a\u5dde\u533a","sort":99},{"area_id":12,"parent_id":2,"area_name":"\u623f\u5c71\u533a","sort":99},{"area_id":11,"parent_id":2,"area_name":"\u95e8\u5934\u6c9f\u533a","sort":99},{"area_id":10,"parent_id":2,"area_name":"\u6d77\u6dc0\u533a","sort":99},{"area_id":9,"parent_id":2,"area_name":"\u77f3\u666f\u5c71\u533a","sort":99},{"area_id":8,"parent_id":2,"area_name":"\u4e30\u53f0\u533a","sort":99},{"area_id":7,"parent_id":2,"area_name":"\u671d\u9633\u533a","sort":99},{"area_id":4,"parent_id":2,"area_name":"\u897f\u57ce\u533a","sort":99},{"area_id":20,"parent_id":2,"area_name":"\u5ef6\u5e86\u53bf","sort":99}],"ret":0}1、构造对象
// 构造INFO对象,其中sort、area_id、parent_id、area_name需要与JSON的key相同public class Info {private String sort = "";private String area_id = "";private String parent_id = "";private String area_name = "";public String getArea_id() {return area_id;}public void setArea_id(String area_id) {this.area_id = area_id;}public String getParent_id() {return parent_id;}public void setParent_id(String parent_id) {this.parent_id = parent_id;}public String getArea_name() {return area_name;}public void setArea_name(String area_name) {this.area_name = area_name;}public String getSort() {return sort;}public void setSort(String sort) {this.sort = sort;}}
2、解析JSON并转换为INFO对象代码
String nani = EntityUtils.toString(response.getEntity(),"UTF-8");JSONObject object = new JSONObject(nani);String array = object.get("data").toString();Gson gson = new Gson();Type type = new TypeToken<List<Info>>() {}.getType();List<Info> haha = gson.fromJson(array, type);for (Info stu : haha) {Log.v("Fover", stu.getArea_name());}
当然您还需要做的就是导入GSON的JAR包了。
下载地址:http://code.google.com/p/google-gson/downloads/list
- Android 使用GSON解析JSON 并转换为JAVA对象
- 使用Gson将Java对象转换为Json
- 使用Gson将Java对象转换为JSON
- 【转】使用Gson将Java对象转换为Json
- Google-gson, 将JSON 转换为 Java 对象或者将Java对象转换成JSON 的Java库,可以在Android上使用
- 翻译之使用Gson将java对象转换为json对象
- JAVA将String转换为json并用gson解析
- GSON 转换JSON为JAVA对象的日期坑
- 使用Gson解析Json为Map对象探索(上)
- 使用Gson解析Json为Map对象探索(下)
- Gson将list<对象>转换为Json
- Android开发-进阶:Json字符串转换为java对象的各种实现方法[json_lib框架、Gson、org.json]
- gson解析json数据格式为object对象
- Android使用gson解析json
- 使用Gson把Java对象转换成Json字符串
- 使用Gson实现Json和Java对象的转换
- Json—使用gson jar包将json字符串解析为java对象或集合(一)
- Android中Gson解析json数据使用@SerializedName注解与java对象不匹配的字段
- Mac Mini 忘记密码
- IP地址小知识
- JS常用代码(8)
- 大白话解析模拟退火算法
- eclipse使用SVN创建,合并分支
- Android 使用GSON解析JSON 并转换为JAVA对象
- regex正则表达式相关知识点
- JS常用代码(9)
- 删除联想G470 oem备份隐藏分区的方法
- C++学习笔记(七)函数探幽
- 动态磁盘
- JS常用代码(10)
- 遗传算法入门
- _beginthread 或 _endthread 编译警告“undefined; assuming extern returning int” 的解决办法