0

我在使用 gson 解析 json 时遇到问题

我的 json 文本是

{
    **"message": [**
        {
            "id": "123",
            "trackid": "GPN-GET-HYGH",
            "category": "0",
            "subject": "new message",
            "dt": "2013-04-02 14:52:48",
            **"message": "Hewlrj",**
            "repliername": null,
            "attachment_name": "image.jpg"
        }
    ],
    "replies": [
        {
            "id": "165",
            "replyto": "123",
            "name": "962788161885",
            "message": "Hellooo\nHjkhjkhjkhkjh\nHjkhkjhjkhkh",
            "dt": "2013-04-02 15:53:11",
            "attachments": "",
            "staffid": "0",
            "rating": null
        }
    ]
}

我创建了两个类,一个用于消息,第二个用于具有上述字段的回复

但得到异常

com.google.myjson.JsonParseException: Expecting object found: "Hewlrj"

请帮我

已编辑

我的消息类结构看起来像(没有getter setter ..我已经删除了它)

public class message {
    int id;
    String trackid;
    String category;
    String subject;
    String dt;
    String message;
    String repliername;
    String attachment_name;
}

public class TicketList {

    ArrayList<message> message;
}


try{
       Gson json=new Gson();
       object=json.fromJson(mJSONString,TicketLis.class);
    }catch (Exception ex) {
      System.out.println("error in gson parsing");
      ex.printStackTrace();

}
4

1 回答 1

0

您的问题是您在 json 中有 "message": "Hewlrj" 并且可能您定义了一个如下所示的类:

class Message {
  private Message message;
}

因此,Gson 期望为消息找到一个 json 对象,而不是字符串。解决方案是用私有字符串消息替换私有消息消息;

于 2013-04-04T10:06:17.300 回答