Как выбрать данные из этого JSON с помощью JSONObject - PullRequest
0 голосов
/ 25 марта 2011
{
 "antikguiden": {
   "stores":[
     {
    "name": "Ninas Bruk & Brocante (Fd Isakssons Antik och Kuriosa)",
     "category": "Antikaffär" },}

Теперь я хочу выбрать имя и категорию данных

для отображения на эмуляторе Android.

Как я могу написать код? Благодарю.

Ответы [ 3 ]

0 голосов
/ 25 марта 2011

OK.Я не думаю, что вы опубликовали полную строку JSON;

Ниже приведена действительная строка JSON:

{ "antikguiden": 
    { "stores":[
        {"name": "Ninas Bruk & Brocante (Fd Isakssons Antik och Kuriosa)","category": "Antikaffär"}
      ]}
}

Ниже описано, как ее проанализировать в Android:

String jsonStr = the json string above;
JSONObject jObject = new JSONObject(jsonStr);
JSONObject antikguiden = jObject.getJSONObject("antikguiden");
JSONArray storeList = antikguiden.getJSONArray("stores");
for(int i = 0; i < storeList.length(); i++) {
    JSONObject story = storeList.getJSONObject(i);
    String name = story.getString("name");
    String category = story.getString("category");
}

Я не проверял это, поэтому может быть синтаксическая ошибка или два;но вот как ты это делаешь.

0 голосов
/ 25 марта 2011

Если ваша строка похожа на приведенную ниже.

str = "{'antikguiden':{'stores':[{'name': 'Ninas Bruk & Brocante (Fd Isakssons Antik och Kuriosa)','category': 'Antikaffär'}] }}";
        try {
            JSONObject obj = new JSONObject(str);
            JSONObject obj1 = obj.getJSONObject("antikguiden");
            JSONArray jsonarray = obj1.getJSONArray("stores");
            Log.v("TEST","name is "+jsonarray.getJSONObject(0).get("name"));
            Log.v("TEST","category is "+jsonarray.getJSONObject(0).get("category"));
        } catch (JSONException e) {
            e.printStackTrace();
        }

Чтобы сделать его обобщенным, как упоминал Джеймс, используйте цикл после получения массива json.

0 голосов
/ 25 марта 2011

Я думаю, что здесь вы можете узнать на примере http://www.androidcompetencycenter.com/2009/10/json-parsing-in-android/

Но да, Мэтт прав, это не правильный JSON

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