Gson - 放置和获取复合对象的 ArrayList
Gson - putting and getting ArrayList of composite objects
我有 class NameAndPostion
我要在其中存储用户的姓名和职位。我已经创建了 ArrayList
个对象 NameAndPosition
。
ArrayList<NameAndPosition> LocSenders = new ArrayList<NameAndPosition>();
现在我已经使用 Gson 库将 LocSenders
转换为 JSON 字符串
Gson gson = new Gson();
String json = gson.toJson(LocSenders);
我进行此转换是为了在共享首选项中保存 LocSenders
现在我想检索我使用 Gson JSON 转换存储的 'LocSenders' 中的所有对象。
我想使用 Gson 库来完成这项工作。
我没有得到 Gsons 方法 gson.fromJson(json, classOfT)
。那么如何正确地做到这一点?
NameAndPostion.java
public class NameAndPosition {
private String name = "";
private LatLng position = null;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public LatLng getPosition() {
return position;
}
public void setPosition(LatLng position) {
this.position = position;
}
}
提前致谢。
这是使用 gson 转换为 JSON 和从 JSON 转换的示例。
//Convert to JSON
System.out.println(gson.toJson(employee));
//Convert to java objects
System.out.println(gson.fromJson("{'id':1,'firstName':'Lokesh','lastName':'Gupta','roles':['ADMIN','MANAGER'],'birthDate':'17/06/2014'}"
, Employee.class));
反序列化集合
List<Employee> yourClassList = new Gson().fromJson(jsonArray, Employee.class);
对于通用集合。
Type listType = new TypeToken<ArrayList<YourClass>>() {
}.getType();
List<YourClass> yourClassList = new Gson().fromJson(jsonArray, listType);
你也可以参考下面link。
Google Gson - deserialize list<class> object? (generic type)
我有 class NameAndPostion
我要在其中存储用户的姓名和职位。我已经创建了 ArrayList
个对象 NameAndPosition
。
ArrayList<NameAndPosition> LocSenders = new ArrayList<NameAndPosition>();
现在我已经使用 Gson 库将 LocSenders
转换为 JSON 字符串
Gson gson = new Gson();
String json = gson.toJson(LocSenders);
我进行此转换是为了在共享首选项中保存 LocSenders
现在我想检索我使用 Gson JSON 转换存储的 'LocSenders' 中的所有对象。
我想使用 Gson 库来完成这项工作。
我没有得到 Gsons 方法 gson.fromJson(json, classOfT)
。那么如何正确地做到这一点?
NameAndPostion.java
public class NameAndPosition {
private String name = "";
private LatLng position = null;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public LatLng getPosition() {
return position;
}
public void setPosition(LatLng position) {
this.position = position;
}
}
提前致谢。
这是使用 gson 转换为 JSON 和从 JSON 转换的示例。
//Convert to JSON
System.out.println(gson.toJson(employee));
//Convert to java objects
System.out.println(gson.fromJson("{'id':1,'firstName':'Lokesh','lastName':'Gupta','roles':['ADMIN','MANAGER'],'birthDate':'17/06/2014'}"
, Employee.class));
反序列化集合
List<Employee> yourClassList = new Gson().fromJson(jsonArray, Employee.class);
对于通用集合。
Type listType = new TypeToken<ArrayList<YourClass>>() {
}.getType();
List<YourClass> yourClassList = new Gson().fromJson(jsonArray, listType);
你也可以参考下面link。
Google Gson - deserialize list<class> object? (generic type)