我希望通过GSON库将Json字符串转换为List。
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;
答案 0 :(得分:0)
从日志中可以很简单。 JSON字符串包含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();
了解详情