来一个解析工具类

Gson Jar没有的 自己去搞吧 

package com.example.myapplication.utils;

import com.google.gson.Gson;
import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import com.google.gson.reflect.TypeToken;

import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;

/**
 * Created by 徐嘉健 on 2017/3/8.
 * Gson 解析
 */
public class GsonFactory {


    //将Json数据解析成相应的映射对象
    public static  T parseJsonWithGson(String jsonData, Class type) {
        Gson gson = new Gson();
        T result = gson.fromJson(jsonData, type);
        return result;
    }

    /**
     * @param jsonString
     * @param cls
     * @return
     * @author wwb
     */
    public static  List getObjectList(String jsonString, Class cls){
        List list = new ArrayList();
        try {
            Gson gson = new Gson();
            JsonArray arry = new JsonParser().parse(jsonString).getAsJsonArray();
            for (JsonElement jsonElement : arry) {
                list.add(gson.fromJson(jsonElement, cls));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return list;
    }

    /**
     * @param json
     * @param clazz
     * @return
     */
    public static  ArrayList jsonToArrayList(String json, Class clazz) {
        Type type = new TypeToken>() {
        }.getType();
        ArrayList jsonObjects = new Gson().fromJson(json, type);

        ArrayList arrayList = new ArrayList<>();
        for (JsonObject jsonObject : jsonObjects) {
            arrayList.add(new Gson().fromJson(jsonObject, clazz));
        }
        return arrayList;
    }

    /**
     * 字符串转换成JSON串
     * @param str
     * @return
     */
    public  static String TransformationGson(String str){
        new Gson().toJson(str);
        return str;
    }

}

你可能感兴趣的:(来一个解析工具类)