Android学习之Json解析库Moshi
2016-08-07 20:44
232 查看
又懒了一段时间没更新博客了,自认虽然水平不高,但是还是能帮到不少新手的。
说到Json解析库,网上可以说一找一大堆,Json解析库确实是大部分程序员都会使用的一类库,虽然自己完全可以一步步去解析,但是其实真的没必要自己去写,不会偷懒的程序员不是好程序员。
说到moshi,可能很多童鞋没听过,但是说到square团队,大家基本上都是听说过的,moshi就是该团队出品的一个Json解析库。
该库地址如下:
https://github.com/square/moshi
这里写下最基本简单的使用:
首先是compile:
惯例,根据Json字符串的格式建立实体:
接下来是使用moshi进行Json解析,这里再次偷懒,直接把Json字符串扔了进来:
接着实例Moshi对象:
然后使用Moshi提供的Moshi.adapter()方法来绑定实体:
最后就是解析Json了,使用JsonAdapter.fromJson()来传入Json字符串就可以解析成功了:
这里只解析了area键,点击后可以看到数据已经解析成功,是不是超级简单呢?
解析网络数据时千万别忘记添加访问网络的权限哦。
希望对各位有所帮助。
效果图:
还是惯例,带上Demo地址:
http://download.csdn.net/detail/qq_23940659/9597499
说到Json解析库,网上可以说一找一大堆,Json解析库确实是大部分程序员都会使用的一类库,虽然自己完全可以一步步去解析,但是其实真的没必要自己去写,不会偷懒的程序员不是好程序员。
说到moshi,可能很多童鞋没听过,但是说到square团队,大家基本上都是听说过的,moshi就是该团队出品的一个Json解析库。
该库地址如下:
https://github.com/square/moshi
这里写下最基本简单的使用:
首先是compile:
compile 'com.squareup.moshi:moshi:1.2.0'
惯例,根据Json字符串的格式建立实体:
/** * IdCard * * @author yuzhentao */ public final class IdCard { private String resultcode; private String reason; private ResultBean result; public String getResultcode() { return resultcode; } public void setResultcode(String resultcode) { this.resultcode = resultcode; } public String getReason() { return reason; } public void setReason(String reason) { this.reason = reason; } public ResultBean getResult() { return result; } public void setResult(ResultBean result) { this.result = result; } public static class ResultBean { private String area; private String sex; private String birthday; public String getArea() { return area; } public void setArea(String area) { this.area = area; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getBirthday() { return birthday; } public void setBirthday(String birthday) { this.birthday = birthday; } } }
接下来是使用moshi进行Json解析,这里再次偷懒,直接把Json字符串扔了进来:
final String json = "{\"resultcode\":\"200\",\"reason\":\"成功\",\"result\":{\"area\":\"上海市\",\"sex\":\"男\",\"birthday\":\"2016年08月07日\"}}";
接着实例Moshi对象:
Moshi moshi = new Moshi.Builder().build();
然后使用Moshi提供的Moshi.adapter()方法来绑定实体:
final JsonAdapter<IdCard> jsonAdapter = moshi.adapter(IdCard.class);
最后就是解析Json了,使用JsonAdapter.fromJson()来传入Json字符串就可以解析成功了:
try { IdCard idCard = jsonAdapter.fromJson(json); Toast.makeText(context, idCard.getResult().getArea(), Toast.LENGTH_SHORT).show(); } catch (IOException e) { e.printStackTrace(); }
这里只解析了area键,点击后可以看到数据已经解析成功,是不是超级简单呢?
解析网络数据时千万别忘记添加访问网络的权限哦。
希望对各位有所帮助。
效果图:
还是惯例,带上Demo地址:
http://download.csdn.net/detail/qq_23940659/9597499
相关文章推荐
- Android学习之JSON数据解析
- Android学习第十八天----JSON解析
- android菜鸟学习笔记25----与服务器端交互(二)解析服务端返回的json数据及使用一个开源组件请求服务端数据
- [Android学习]JSON的三种解析方式
- Android系列学习:JSON解析
- [Android学习]JSON的三种解析方式
- Android学习系列(20)--App数据格式之解析Json
- android学习二十三(解析json格式数据)
- android 学习笔记 解析json格式的数据 JSONObject 和GSON解析json格式数据
- Android json解析有关内容学习笔记
- Android学习系列(20)--App数据格式之解析Json
- Android学习系列(20)--App数据格式之解析Json
- Android 学习笔记之Volley(七)实现Json数据加载和解析...
- Android学习之JSON数据解析
- Android学习之解析JSON
- 【Android学习】JSON与XML综合六种解析方式-综合案例(web项目源码+android源码+jar包)
- Android学习(二):解析JSON,GSON,FASTJSON;JDBC编程
- Android学习之Json解析库Gson
- Android学习第七天————将数据保存为JSON格式,通过JSONObject和JSONReader来解析JSON数据
- Android学习之Json数据的获取与解析