我正在尝试使用 GSON 解析 JSON 对象。
我的 JSON 是:
{ "truncate": [
{
"lower": 20,
"upper": 40,
"delimiter": " ",
"scope": ["$title"]
},
{
"lower": 30,
"upper": 65,
"delimiter": " "
}
] }
我已经定义了我的 2 个类:
public class TruncateObj {
private List<TruncateObjectChild> objChild;
// getter and setter
}
和
public class TruncateObjectChild {
private int lower;
private int upper;
private String delimiter;
private List<String> scope;
// getters and setters
}
我的解析语句是
Gson gson = new Gson();
TruncateObj truncation = gson.fromJson(template, TruncateObj.class);
出于某种原因,这不起作用。 Gson 创建一个 TruncatObj
child ,但是List<TruncateObjectChild>
在 TruncateObj 中为空。
我做的有什么问题吗?
最佳答案
TruncateObj
中的字段 objChild
与其在 JSON 中的名称不匹配。将该字段重命名为 truncate
并重试。
或者,您可以使用 @SerializedName("truncate")
注释 objChild
字段,以告诉 gson 使用 truncate
中的值> JSON 中的字段作为 Java 对象中 objChild
字段的值。
关于java - 使用 Gson 进行 JSON 解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8207274/