2013-08-05 3 views
1

это мой код ниже, как я могу это json-файл проверить мой метод это метод coreect для aces json file array и node? Я хочу получить этот json-файл ниже из моего кода, помогите мне, как я могу использовать этот код json-файла formmy? я DONTKNOW howmany массив в JSON файлКак получить доступ к многоуровневому файлу json?

{ 
    "status":1, 
    "message":"", 
    "data": 
    { 
     "school": 
     [ 
     { 
      "id":3, 
      "name":"FG Public School" 
     }, 
     { 
      "id":4, 
      "name":"Fazaia Inter College"} 
     ] 
    } 
} 




HttpClient client = new DefaultHttpClient(); 

HttpConnectionParams.setConnectionTimeout(client.getParams(), 15000); 

HttpConnectionParams.setSoTimeout(client.getParams(), 15000); 
HttpUriRequest request = new HttpGet(SelectMenuAPI); 
HttpResponse response = client.execute(request); 
InputStream atomInputStream = 
response.getEntity().getContent(); 
BufferedReader in = new BufferedReader(new 
InputStreamReader(atomInputStream)); 

String line; 
String str = ""; 
while ((line = in.readLine()) != null){ 
    str += line; 
} 


JSONObject json = new JSONObject(str); 
JSONArray data = json.getJSONArray("school"); 

for (int i = 0; i < data.length(); i++) { 
    JSONObject object = 
    data.getJSONObject(i); 

    // JSONObject category = 
    object.getJSONObject("Category"); 


    Category_ID.add(Long.parseLong(object.getString("id"))); 

    Category_name.add(object.getString("name")); 

    Log.d("Category name", 
    Category_name.get(i)); 
+0

не показывать этот код checkmy код JSon пожалуйста «школа» является Арай или узел ???? – user2644835

+0

В вашем коде есть синтаксические ошибки. Пожалуйста, убедитесь, что вы разместили весь цикл. – Dariusz

+0

школа - это массив. Каждый элемент массива - это узел – JackTurky

ответ

0

Сначала вам нужно получить объект в целом JSON, потому что это в «{» «}». Затем вам нужно снова получить объект с именем «data», потому что он находится в '{' '}'. И только тогда вы должны получить массив под названием «школа».

JSONObject json = new JSONObject(str); 
JSONObject data = json.getJSONObject("data"); 
JSONArray school = data.getJSONArray("school"); 
1
Try This Code 
================================================================= 
    try { 
      String[] Id,name; 
      JSONObject json = new JSONObject(str); 

      JSONObject SubString3 = json.getJSONObject("data"); 
      Log.e(SubString3.toString(),"SubString3"); 
      JSONArray Array = SubString3.getJSONArray("school"); 
      Id = new String[Array.length()]; 
      name =new String[Array.length()]; 
      for(int i=0;i<=Array.length();i++) 
      { 
       Id[i]= Array.getJSONObject(i).getString("id"); 
       Log.e(Id[i].toString(),"Id[i]"); 
       name[i]= Array.getJSONObject(i).getString("name"); 
       Log.e(name[i].toString(),"name[i]"); 
      } 
     } catch (JSONException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
+0

где u используется строка 1 и строка 2 ?? – user2644835

+0

Подстрока1 и подстрока2 хранят только строку состояния и сообщение о ее простом анализе. – ishu

+0

Я редактирую код ура вставить мой код isnot work check plzzzz – user2644835

1

КАТЕГОРИЯ объект не присутствует в файле Json

вы можете попробовать следующее

JSONObject json = new JSONObject("str"); 
    JSONObject data = json.getJSONObject("data"); 
    JSONArray school = json.getJSONArray("school"); 

    for (int i = 0; i < data.length(); i++) { 
     JSONObject object = school.getJSONObject(i); 

     long id = Long.parseLong(object.getString("id")); 
     String name = object.getString("name"); 
     JSONObject category = new JSONObject(); 
        category.put("id"); 
        category.put("name"); 




    } 
+0

i wantto добавить объект объекта, затем загрузить в listview – user2644835