android开发学习 ------- json数据与实体类之间的相互转换

时间:2023-03-09 06:19:36
android开发学习 ------- json数据与实体类之间的相互转换

在网络请求的时候,会返回给我们实体类,我们需要将实体类转化为json字符串,方便处理数据;

有时候也会将json数据转换为实体类。

在Android Studio中,json要互相转换,需要用到gson包。在module的build.gradle中添加

android开发学习 ------- json数据与实体类之间的相互转换

sync project.

项目中的用法:

            /**将实体类转化为json字符串*/
String jsonTest = gson.toJson(mconstellation, Constellation.class);//mconstellation是网络请求返回的有数据的实体类
Log.e("json-constellation",jsonTest); /**将json字符串转化为实体类*/
Constellation mcon = gson.fromJson(jsonTest,Constellation.class);//jsonTest是json字符串
Log.e("entity-constellation",mcon.getDatetime()+""+mcon.getSummary()); try {//将json数据进行解析
JSONObject resp = new JSONObject(jsonTest);
String qfriemd = resp.getString("QFriend");
String datetime = resp.getString("datetime");
String summary = resp.getString("summary");
Log.e("summary",summary); } catch (JSONException e) {
e.printStackTrace();
}

打印的Log:

E/json-constellation: {"QFriend":"处女座","all":"20%","color":"黄色","date":20180201,"datetime":"2018年02月01日","error_code":0,"health":"40%","love":"20%","money":"20%","name":"摩羯座","number":5,"resultcode":"200","summary":"今天的你比较容易看不惯工作中的一些人,容易主动找别人茬,易怒。身体今天会有些不舒服。","work":"20%"}

E/entity-constellation: 2018年02月01日今天的你比较容易看不惯工作中的一些人,容易主动找别人茬,易怒。身体今天会有些不舒服。

E/summary: 今天的你比较容易看不惯工作中的一些人,容易主动找别人茬,易怒。身体今天会有些不舒服。