Проблема инициализации JSONObject - PullRequest
0 голосов
/ 19 мая 2011

Я пытаюсь инициализировать JSONObject со следующей строкой, полученной от веб-службы:

"{
    "campaignid": "8",
    "campaignname": "Pilotarienak 2011",
    "campaignlink": "http:\\/\\/www.xxx.com\\/fr\\/cote-basque\\/agenda\\/2011-05-20\\/FMAAQU064FS016DV-pilotarienak-d-anglet?fromapp",
    "splash": "http:\\/\\/www.xxx.com\\/ads\\/customers\\/pilotarienak\\/320x480.jpg",
    "banner": "http:\\/\\/www.xxx.com\\/ads\\/customers\\/pilotarienak\\/320x160.jpg"
}"

Кажется, это действительный json (он проверяется на jsonlint.com), но при инициализации JSONObject с этим я получаю:

org.json.JSONException: Value  of type java.lang.String cannot be converted to JSONObject

Кто-нибудь может помочь?

Спасибо

Ответы [ 3 ]

9 голосов
/ 19 мая 2011

Похоже, вы пытаетесь создать экземпляр из строки с дополнительными кавычками. Вам нужно удалить заключающие в кавычки (я не использую вашу строку, но привожу пример, чтобы прояснить ее):

Это нормально:

String jStr= "{\"param1\":\"hello\"}";
JSONObject jObj = new JSONObject(jStr);

Это не:

String jStr= "\"{\"param1\":\"hello\"}\"";
//  note this ^^             and this ^^ 
JSONObject jObj = new JSONObject(jStr);
0 голосов
/ 19 мая 2011

Попробуйте удалить все "\" символы

0 голосов
/ 19 мая 2011

Попробуйте переписать все, в упрощенном режиме (только для теста). Я думаю, что вы поставили недопустимый символ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...