安卓中 Gson的使用
测试数据:
{ "error_code": 0, "reason": "Success", "result": { "data":[ { "content":"床不在好,有女(你)就行,枕不在久,整完就走,斯是陋室,惟吾色心!!…", "hashId":"accd4dea540fe0b2f2205f9234114335", "unixtime":1478579630, "updatetime":"2016-11-08 12:33:50" }, { "content":"老婆问老公:亲爱的你觉得我是灰姑娘吗?老公回答:当然不是了。老婆:那你的意思说是我是白雪公主?老公回答:不,你是黑姑娘。", "hashId":"8144c8979f02c539841968ef8046db98", "unixtime":1478577230, "updatetime":"2016-11-08 11:53:50" }, { "content":"睡的正香,老婆把我叫醒说她要去卫生间,我说你上厕所就上呗!她说我是要叫你起来穿衣服的,我说那你上厕所我起来穿衣服干啥?我又不冷!然后就看着老婆把被子抱在身上去上厕所了。", "hashId":"76b7f6c0ba6c3455fbd216820ce4a68c", "unixtime":1478577230, "updatetime":"2016-11-08 11:53:50" }, { "content":"老奶奶加了出租车,到了之后车费显示是8块,但是她只给了3块。司机赶紧叫住老奶奶:“老太太,这车费8块块你怎么只付3元呢?”老奶奶回答:“我刚才坐车的时候计价器显示5元块了。那我不就是在给三块就可以了。", "hashId":"85a82ecf746981ea3f48e5066eb034e1", "unixtime":1478577230, "updatetime":"2016-11-08 11:53:50" }, { "content":"每次看战争片时总有一些疑惑,在冲锋时前面的士兵一边奔跑着一边狂打枪,可以理解。但总是看到后面的士兵也紧跟着跑开着枪,难道子弹会拐弯,打不到前面的士兵吗?……求解答,为什么打不到队友?", "hashId":"d3ddd517e97a6dbeac24c82d4ce34e72", "unixtime":1478575431, "updatetime":"2016-11-08 11:23:51" } ] } }
1.创建一个class TestBean
2.alt+insert 选择GsonFormat
3.将测试数据复制上去
4.点击Format
5.点击 ok
结束,bean文件创建成功
测试如何将bean转换为Json,Json如何转换为bean
TestActivity 测试中代码
package com.culturer.guishi_shoper.test;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import com.culturer.guishi_shoper.R;
import com.culturer.guishi_shoper.bean.TabBean;
import com.culturer.guishi_shoper.bean.TestBean;
import com.google.gson.Gson;
public class TestActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
Gson gson = new Gson();
TestBean aBean = new TestBean(); //刚刚创建的TestBean.class
aBean.setError_code(11); //TestBean中已有的方法
aBean.setReason("ashdkahsd"); //设置参数
//bean转换为Json
String str = gson.toJson(aBean);
Log.i("an", "onCreate: "+str); //打印日志
//Json转换为bean
TestBean testBean = gson.fromJson(str,TestBean.class);
Log.i("an", "onCreate: "+testBean.getReason()); //打印日志
}
}
AndroidManifest.xml中,将test设置为启动
<activity android:name=".test.TestActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
程序运行后,在Logcat中查看 级别设置为Info ,打印日志为 an 的 日志
参考于
https://blog.csdn.net/qq_30379689/article/details/53081358

浙公网安备 33010602011771号