Java 从JSON数据中提取多个数组

Java 从JSON数据中提取多个数组,java,android,json,Java,Android,Json,我仍然是一个新手android程序员。。。我正在尝试解析多个数组。 这是我从php代码中收到的JSON数据 [{“mac”:[“00:12:17:E1:6B:07”,“90:94:E4:37:FD:C4”]},{“ap”:[“AP1”,“AP3”]}] 我的安卓代码是 if (j3data != null && j3data.length() > 0) { JSONObject json_data; // creamos un objeto JSO

我仍然是一个新手android程序员。。。我正在尝试解析多个数组。 这是我从php代码中收到的JSON数据

[{“mac”:[“00:12:17:E1:6B:07”,“90:94:E4:37:FD:C4”]},{“ap”:[“AP1”,“AP3”]}]

我的安卓代码是

if (j3data != null && j3data.length() > 0) {

            JSONObject json_data; // creamos un objeto JSON
            try {
                json_data = j3data.getJSONObject(0); // leemos el primer
                                                        // segmento
                                                        // en nuestro caso el
                                                        // unico
                //ap = json_data.getString("ap"); //change please


                 JSONArray jArray = json_data.getJSONArray("mac");
                   List<String> list = new ArrayList<String>(); 
                   for (int i=0; i<jArray.length(); i++) { 
                       list.add( jArray.getString(i) ); 
                       Log.e("Output",jArray.getString(i)); 

                   }   

                //putting them into the list . a array 
                JSONArray j2Array = json_data.getJSONArray("ap");
                List<String> list2 = new ArrayList<String>(); 

                   for (int i=0; i<j2Array.length(); i++) { 
                       list2.add( j2Array.getString(i) ); 
                       Log.e("Output2",j2Array.getString(i)); 

                   }   
                   //Log.e("", list.get(0));

                Log.e("IndoorFragment ap --> ", ap);

            } catch (JSONException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

            return true;
        } else { // json obtenido invalido verificar parte WEB.
            Log.e("JSON3  ", "ERROR");
            return false;
        }
if(j3data!=null&&j3data.length()>0){
JSONObject json_data;//creamos un objeto json
试一试{
json_data=j3data.getJSONObject(0);//leemos el primer
//分段
//埃内斯特罗卡索酒店
//联通
//ap=json_data.getString(“ap”);//请更改
JSONArray jArray=json_data.getJSONArray(“mac”);
列表=新的ArrayList();

对于(int i=0;i使用下面的代码获取JSON数据:

                JSONArray jArray=new JSONArray(result);
                for(int i=0;i<jArray.length();i++){
                    if(i==0){
                        String str1=jArray.getJSONObject(i).getJSONArray("mac").getString(0);
                        String str2=jArray.getJSONObject(i).getJSONArray("mac").getString(1);
                        Log.e("Mac Result", "First: "+str1+" Second: "+str2);
                    }else if(i==1){
                        String str1=jArray.getJSONObject(i).getJSONArray("ap").getString(0);
                        String str2=jArray.getJSONObject(i).getJSONArray("ap").getString(1);
                        Log.e("Ap Result", "First: "+str1+" Second: "+str2);
                    }
                }
JSONArray jArray=新的JSONArray(结果);

对于(int i=0;iI已经给出了一些反序列化JSON的示例代码。请参见,。我认为“ap”在j3data.getJSONObject(1)中,而不是j3data.getJSONObject(0);