2012-05-08 5 views
1

У меня есть JSON Array, я хотел создать динамически no из List<String> jsonFieldName базы на no уникальных полей в ответе JSON; Скажем, например;Получить имена полей JSON, не зная реальных имен

JSON = [{a:1,b:2,c:3},{a:4,b:5,c:5}]; 

результат:

temp_array=[{a,b,c}]; 

на основе выборки JSON выше, я бы в конечном итоге с 3 новый список; список: списка по списку б список с

Я хотел закончить, как это потому, что я хотел, чтобы создать общий ответ парсер JSON, в котором каждый ответ может отличаться по размеру/длиной.

Как я могу реализовать его в Android;

Вот мой существующий метод для анализа ответа JSON

public void getJsonData(JSONArray ja) { 
    try { 
     // JSONArray jArray = new JSONArray(result); 
     for (int i = 0; i < ja.length(); ++i) { 
      JSONObject jo = ja.getJSONObject(i); 
      Log.i("Connect->getJsonData", jo.getString("tableno")); 
     } 
    } catch (Exception e) { 
     Log.e("ConnectToDatabase->getJsonData", "Error Parsing JSON Data " 
       + e.toString()); 
    } 
} 
+0

http://bit.ly/IGHBlN – Selvin

+0

ссылка хороша, JsonObject.names() ; делает трюк ... теперь, как я могу принять ответ, который является просто комментарием? –

ответ

0

Вот что я сделал:

public void getJsonData(JSONArray ja) { 
**List<String> arrNames = new ArrayList<String>**; 
try { 
    // JSONArray jArray = new JSONArray(result); 
    for (int i = 0; i < ja.length(); ++i) { 
     JSONObject jo = ja.getJSONObject(i); 
     **arrNames[i] = jo.names(i);** 
     Log.i("Connect->getJsonData", jo.getString("tableno")); 
    } 
} catch (Exception e) { 
    Log.e("ConnectToDatabase->getJsonData", "Error Parsing JSON Data " 
      + e.toString()); 
} 
} 
Смежные вопросы