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
        }
    ]
}

上記のフィールドを使用して、メッセージ用と返信用の 2 つのクラスを作成しました

しかし、例外が発生します

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

私を助けてください

編集済み

私のメッセージクラス構造は次のようになります(ゲッターセッターなし..私はそれを削除しました)

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 オブジェクトを見つけることを期待しています。解決策は、プライベート Message メッセージをプライベート String メッセージに置き換えることです。

于 2013-04-04T10:06:17.300 に答える