【发布时间】:2016-03-08 01:17:40
【问题描述】:
我有一个这样的模型:
class MyModel{
String id;
String name;
String field;
//Getters and setters
}
我正在使用以下代码使用 Gson 解析 json
// Returns the json containing list of objects
// with properties supplied to the method
String response = getResponse(new String[] { "id", "name", "value",
{A variable field whose value is determined at runtime}});
MyModel obj = new Gson().fromJson(response,
new TypeToken<List<MyModel>>() {}.getType());
该代码适用于 3 个预定义字段。第四个字段的名称是变量(在运行时确定),我无法在模型中创建硬编码字段,因为该字段不固定。如何解析这样一个字段是动态的json?
【问题讨论】:
-
我想
Gson使用TypeToken是不可能的,你必须手动获取动态字段。 -
@Clairvoyant 没有typetoken可以吗?
-
第四个字段的数据类型保持不变???如果字段名称将被 2 或 3 个随机名称更改,那么您可以使 2 或 3 个具有第四个字段名称不同的类
-
@Clairvoyant 是的,数据类型始终是字符串。但名称可以是任何东西,而不仅仅是 2 或 3 个随机名称。