即時通訊嘗試從具有mongodb作爲其數據庫和配置項的站點獲取數據,我使用簡單的腳本將json編碼爲網站輸出,輸出如下:Android:無法從多維MongoDB轉換爲JSONArray jsonObject
{
"mko680": {
"_id": {
"$id": "515be1807bfb8b1d0d000000"
},
"channel": [
"channel a",
"subchannel a"
],
"channel_id": 227,
"id": "mko680",
},
"mkv002": {
"_id": {
"$id": "515b32407bfb8b1d0d000000"
},
"channel": [
"channel a",
"subchannel b"
],
"channel_id": 232,
"id": "mkv002",
}
}
我嘗試解析輸出在我的Android項目這樣
JSONArray obj = new JSONArray(outputlike o);
for (int i = 0; i < obj.length(); i++) {
JSONObject json_data = obj.getJSONObject(i);
Log.i("test",json_data.getString("channel_id"));
}
的logcat的說org.JSON.Mismatch
任何線索的是JSON /我的代碼不正確?
感謝,並索裏對我不好的問題希望你能理解
更新:
現在我將其更改爲JSON對象,如:
JSONObject arr = new JSONObject(bufstring);
for (int i = 0; i < arr.length(); i++) {
Log.i("test",arr.getString("channel_id"));
}
但logcat的現在說,不值爲channel_id,但它確定在該輸出中有channel_id,有任何線索?
謝謝,是的,我已經做了這樣的事情,但我想從所有mko680,mkv002和其他我所不知道的所有數據知道_id是什麼,循環時有什麼辦法呢? – Abdullah
如果你已經制作好了你的JSON,然後把我的代碼片段放在while循環中,它就可以工作。 – SudoRahul
這裏是我完整的JSON http://tny.cz/72d02fc2,你可以發佈循環代碼,我試試看,它只顯示第一個(mko680)其他沒有 – Abdullah