您当前的位置: 首页 > 

蓝不蓝编程

暂无认证

  • 4浏览

    0关注

    706博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

gson解析长整形数问题

蓝不蓝编程 发布时间:2018-09-05 09:03:58 ,浏览量:4

问题描述:

  服务器端返回一个json字符串,里面有一个长整形(如1536061697),当采用Gson的fromJson函数解析之后,却变成了科学记数法形式(1.536061697E9)。

  原始代码:

String json = "{\"time\":1536061697,\"name\":\"test\"}";
Map map = gson.fromJson(json, Map.class);
String timeStr = map.get("time").toString();

解决方案:  

String json = "{\"time\":1536061697,\"name\":\"test\"}";
Map map= gson.fromJson(json, new TypeToken(){}.getType());
String timeStr = map.get("time");

花絮:

1.初期遇到此问题时,我判断时Gson处理长整形数的转化存在问题,因为曾使用过FastJson,所以直接换用了FastJson,采用了JSON.parseObject(map, Map.class)函数进行解析。

2.不过后来其他同事提出,这种方式不好,因为一个小问题,引入一个库,会导致包增大,方法数增多,所以就采用了上面这种方案。

 

安卓开发技术分享:https://blog.csdn.net/yinxing2008/article/details/84555061

关注
打赏
1639405877
查看更多评论
立即登录/注册

微信扫码登录

0.0400s