【发布时间】:2016-11-26 12:32:54
【问题描述】:
我正在使用 Gson lib 将 json 反序列化为 Java 对象,但出现错误。
下面是json字符串:
{
"pageInfo": [
{
"detail": "{\"key1\":\"value1\",\"key2\":\"value2\"}",
"id": 4,
"type": 0
}]
}
还有java类:
public java.util.List pageInfo;
class CreditDetailItem {
public String id;
public int type;
public String detail;
}
然后抛出异常:预期为 BEGIN_OBJECT 但在“详细信息”属性上为 STRING。
有没有人可以帮帮我?
【问题讨论】:
-
添加您尝试将 JSON 转换为 Java 对象的代码。
-
detail不应该是另一个对象吗?可能 Gson 足够聪明,可以注意到您有一个编码为字符串的对象。 -
尝试不带引号和斜线..
{"key1":"value1","key2":"value2"}. -
我认为您的代码中写入的 JSON 字符串存在问题,请查看 readyandroid 答案。