Android的Json字符串用GSON解析注意的问题
16lz
2021-01-25
第一次写博客,主要是做笔记和分享,希望和我遇到同样问题的人能快速解决不必花费更多时间和精力
我们通过Android的网络请求,请求服务器返回的字符串用GSON解析的代码为:
bean results = new Gson().fromJson(content, bean.class);
这我们都知道,我就提出一些我遇到解析的问题来:
1.能解析,但获取的值为null
这我们就得看json字符串了,假设json字符串为:{"result":1},
这是最简单的 但是我们也用GSON解析,并创建实体类 :private int Result;
这样的的话就解释了为什么获取为null了,因为这个result在bean中定义的不与json字符串定义的属性相同,所以必须把 Result写成小写
或者:在 哪个bean中 写入:@SerializedName("result") 要问为啥 我也不知道。
@SerializedName("result")//设置private int Result;
2.解析错误,直接报错 ,不抛异常
这可能是因为传的json中有 date转成long的字符,在用这个代码解析 而在bean中却指定为date则是会出现这种情况的,我们则需把date类型换成long类型即可。
附加:long转日期的string类型//Date date = new Date(long值); String类型和int类型可以通过强转得到long值,必须得为long值 string类型和int类型不行
//String str = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date); 这个格式是必须得,假如月的部分MM为小写则实际输出为00,如果小时HH写为hh则可能为00或者12
注:我只是做做笔记
更多相关文章
- 分支和循环(二)(零基础学习C语言)
- android--理解和使用自定义权限
- Android枚举类引用实例
- android 加速度传感器妙用与自定义View
- PHP学习之初:基本语法
- Android内核源码Abi目录学习笔记
- 让你自己编写的Android的Launcher成为系统中第一个启动应用程序
- 自定义区间滑动取值控件
- Android(安卓)修改全局自定义字体样式(字形,大小)※