专栏首页编程之路羊皮书APP(Android版)开发系列(十四)Gson解析json很简单,还在手动的写实体类吗?

羊皮书APP(Android版)开发系列(十四)Gson解析json很简单,还在手动的写实体类吗?

不得不说,Gson用起来确实挺方便的,但是最近发现很多人在使用Gson的时候,会出现各种问题,尤其是新手,下面我给出几个问题的解决方法,希望对你有用。

  • 找不到Gson.jar的下载地址的,直接去github上下载,不用借助他人的各种网盘或csdn等。下载地址是:https://github.com/google/gson
  • Gson如何将json字符串解析为Object:
String jsonStr="";//json字符串
Gson gson = new Gson();
Result obj = gson.fromJson(jsonStr,Result.class);//Result是json对应的实体类
  • Gson如何将Object转化为json字符串:
String jsonStr = new Gson().toJson(Result.class);
  • Gson将json字符串转为Object时候,经常会出现异常,如json字符串为空、json字符串不正确,我们可以封装一个类,来统一处理:
package cn.studyou.parchment.utils;

import android.text.TextUtils;

import com.google.gson.Gson;

import cn.studyou.baselibrary.log.L;

/**
* 基本功能:Gson解析
* 创建:王杰
* 创建时间:16/3/15
* 邮箱:w489657152@gmail.com
*/
public class GsonUtils {

   public static Object fromJson(String jsonStr,Class clazz){
       Object object = null;
       if (!TextUtils.isEmpty(jsonStr)) {
           try {
               object = new Gson().fromJson(jsonStr, clazz);
           }catch (Exception e){
               e.printStackTrace();
               L.e("Gson fromJson is error!");
           }
       }
       return object;
   }
  • Gson将复杂的json字符串转换为Object时,如果手动编写实体类,简直太累了,为什么不选择一种简单的方法呢?在Android studio中使用GsonFormat插件会很easy,GsonFormat安装和使用都很简单。这里有安装方法和教程:https://github.com/zzz40500/GsonFormat。安装了这个插件,我相信你就不用再为复杂的json实体类头疼了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 羊皮书APP(Android版)开发系列(六)几个工具的选取

    热心的程序员
  • Nginx tomcat8.5集群 与 redis session 共享

    3、分别修改集群中tomcat的 context.xml 文件 ,在 Context下添加如下代码:

    热心的程序员
  • 羊皮书APP(Android版)开发系列(九)通过Wifi调试程序

    热心的程序员
  • Postman的基础功能

    2.json提交 下图中,当我们选择JSON(application/json) 是会自动帮我们设置 headers 为 application/json

    崔笑颜
  • json格式介绍

    json是 JavaScript Object Notation 的首字母缩写,单词的意思是javascript对象表示法,这里说的json指的是类似于java...

    Devops海洋的渔夫
  • SpringMVC详解(六)------与json交互

      Json(JavaScript Object Notation),它是一种轻量级数据交换格式,格式简单,易于读写,目前使用特别广泛。那么这篇博客我们主要谈谈...

    IT可乐
  • 初识json

    JSON: JavaScript Object Notation,是一种数据格式,对,仅仅是一种格式。 和它类似的还有XML;

    Mshu
  • 如何严格管理你的混合云方案

    追求混合云的道路是不适合意志薄弱者的。从短期来看,最佳的混合云模式可能是找出那些可以在不同环境中长时间干净运行的应用。简单的转移工作负载只是冰山一角。更重要的是...

    静一
  • 6.如何为Hue集成RedHat7的OpenLDAP认证

    温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproje...

    Fayson
  • 神经ODEs:另一个深度学习突破的细分领域

    https://github.com/Rachnog/Neural-ODE-Experiments

    代码医生工作室

扫码关注云+社区

领取腾讯云代金券