Parse JSON Array - PullRequest
       3

Parse JSON Array

1 голос
/ 19 июня 2011

Мой JSON выглядит примерно так:

[{
        "myviews":[{
                "2011-05-12_2011-05-14":{
                    "name":"thiswk",
                    "data":[[12,
                            2403
                        ],
                        [13,
                            2082
                        ],
                        [14,
                            5823
                        ]
                    ]
                }
            },
            {
                "2011-06-05_2011-06-7":{
                    "name":"lastwk",
                    "data":[[5,
                            1279
                        ],
                        [6,
                            6685
                        ],
                        [7,
                            2163
                        ]
                    ]
                }
            }
        ]
    }
]

    JSONObject jo = new JSONObject(jsonString);
    JSONArray ja;
    jo = jo.getJSONObject("2011-05-12_2011-05-14");
    ja = jo.getJSONArray("data");
    int resultCount = ja.length();
    for (int i = 0; i < resultCount; i++)
    {
        JSONObject resultObject = ja.getJSONObject(i);
        resultObject.getJSONArray("12");
        System.out.println("--");
    }

Я не могу прочитать значения в массиве "data". Получите эту ошибку

Исключение в теме "главная" org.json.JSONException: JSONObject текст должен начинаться с символа «{» 1

Ответы [ 2 ]

8 голосов
/ 19 июня 2011

Вы пытаетесь создать JSONObject на основе строки, которая не представляет объект, но массив содержит один объект.

Чтобы получить содержащийся объект, попробуйте

JSONArray inputArray = new JSONArray(jsonString);
JSONObject jo = inputArray.getJSONObject(0);

Я думаю, что некоторые из твоих более поздних работ также неверны, но, возможно, это поможет тебе начать.

0 голосов
/ 19 июня 2011

data представляется массивом массивов.Возможно, вам нужно позвонить ja.getJSONArray(i)?

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