繁体   English   中英

我无法将json字符串转换为List <T> 由GSON

[英]I can't convert json string to List<T> by GSON

我想将Json字符串转换为GSON库列表。

 public <T> List<T> getModelList(String jsonStr, Class<T> type) {
        Type listType = new TypeToken<ArrayList<T>>(){}.getType();
        List<T> yourClassList = new Gson().fromJson(jsonStr, listType);
        return yourClassList;
    }

我打电话

List<CallDetail> callDetails = Converter.me().getModelList(responseMessage.getResult(), CallDetail.class);

但是我使用com.google.gson.internal.LinkedTreeMap对象获得List,但是我需要List<CallDetail>

Json字符串片段

"result": "[{\"servedimei\":\"3579330679481801\",\"тип сетевого события\":\"Исходящий голос\",\"время начала события\":\"2016-01-01 19:33:10.0\"

POJO

public class CallDetail {

    private String servedimei;
    @SerializedName("тип сетевого события")
    private String type;
    @SerializedName("время начала события")
    private String starttime;
    @SerializedName("вызывающий абонент")
    private String src;
    @SerializedName("вызываемый абонент")
    private String dest;
    @SerializedName("длительность")
    private String duration;
    @SerializedName("базовая станция")
    private String bs;
    private String lac;
    private String ci;

从日志中非常简单。 JSON字符串包含result字段,该result字段包含array ,GSON将其视为Map 您还需要再上一堂课,以获得所需的结果。

class CallDetailResult {
        List<CallDetail> result;
        // getter and setter
}

// how to use GSON here to get the desired result
CallDetailResult  result = new Gson().fromJson(jsonStr, CallDetailResult.class);
List<CallDetail> list = result.getResult();

www.json.org上阅读更多内容

在此处输入图片说明

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM