Android gson反序列化到列表
问题描述:
我想解析一个json字符串到列表或arraylist。我有以下的JSON响应从我工作的一个Android项目Android gson反序列化到列表
[
{
"Class": "Lorem",
"Company": "Ipsum",
"Id": "XXXX",
"Name": "Avent"
},
{
"Class": "Consectetur",
"Company": "Adipiscing",
"Id": "YYYYY",
"Name": "Nulla"
}
]
我读过这里解析GSON结果几个例子创建了一个WCF RESTful服务来了,但我有困难,制定一个容器类正如我所见。我已经知道它将单个结果读入Group类,但无法将其解析为任何种类的List或ArrayList。
组类:
public class Group {
private String Id;
private String Name;
private String Class;
private String Company;
}
组容器类:
public class Groups {
private List<Group> GRP;
}
GSON解析声明:
Groups GRP = gson.fromJson(jsonString, Groups.class);
我也要做jsonString的一些处理,因为它显示并在字符串中留出一些空格(在逗号后面),并在我将它们移除后开始工作东部解析为一个单一的元素。不知道这是否会产生什么影响,但我想我会提及它。
此外,我试图做
类型listType =新TypeToken>(){} .getType(); gson.toJson(myStrings,listType);
但这似乎并不奏效,而且我不知道这对我的情况是否有必要。
答
List<Group> groups = gson.fromJson(jsonString, new TypeToken<List<Group>>() {}.getType())
我可以发誓我曾试过这种方式。我想我毕竟不需要容器类。最好是建立一个列表还是一个数组列表,看看我想如何在列表视图中显示一个字段?我的印象是,我必须将该字段放入一个字符串[]中,以将它传递给列表视图适配器。 –
我想弄清楚如何在列表视图中显示“名称”字段 –