我有这个JSON
[
{"Description":"When settir\n"}
]
我的容器类是
class MessageContainer
{
private String Description;
public String getDescription() {
return Description;
}
public void setDescription(String description) {
Description = description;
}
}
使用
时出现异常MessageContainer container = mGson.fromJson(result, MessageContainer.class);
异常读取EXPECTED BEGIN OBJECT,但找到了字符串。
任何人都知道是什么给出的?
答案 0 :(得分:2)
因为它是MessageContainer
的数组而不是单个MessageContainer
实例。
所以你的fromJson
应该是
Type type = new TypeToken<List<MessageContainer>>(){}.getType();
List<MessageContainer> container = new Gson().fromJson(json, type);
答案 1 :(得分:1)
[
{"Description":"When settir\n"}
]
这用于数组列表
{"Description":"When settir\n"}
这是简单的对象
public static void main(String[] args) {
MessageContainer m = new MessageContainer();
m.setDescription("When settir\n");
ArrayList<MessageContainer> list = new ArrayList<MessageContainer>();
list.add(m);
System.out.println(new Gson().toJson(list));
String json = new Gson().toJson(list);
ArrayList<MessageContainer> resultList = new Gson().fromJson(json, new TypeToken<ArrayList<MessageContainer>>() {}.getType());
}