Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android解析JSON多个数组_Android_Json - Fatal编程技术网

Android解析JSON多个数组

Android解析JSON多个数组,android,json,Android,Json,我在服务器上的PHP文件中回显了这个JSON,然后由我的Android应用程序接收 由于我没有将这两个数组合并为一个数组[],您注意到我有两个数组[] 当我有一个数组时,我在Android应用程序中使用以下循环解析它: [{"name":"Mark","Surname":"Gaux"}] [{"Job":"2","Type":"Office"}] 试试看{ JSONArray jArray=新JSONArray(响应); 对于(int i=0;i如果您试图在一个响应中发送两个数组,您可以这样做

我在服务器上的PHP文件中回显了这个JSON,然后由我的Android应用程序接收

由于我没有将这两个数组合并为一个数组[],您注意到我有两个数组[]

当我有一个数组时,我在Android应用程序中使用以下循环解析它:

[{"name":"Mark","Surname":"Gaux"}]
[{"Job":"2","Type":"Office"}]
试试看{
JSONArray jArray=新JSONArray(响应);

对于(int i=0;i如果您试图在一个响应中发送两个数组,您可以这样做:

try{

    JSONArray jArray = new JSONArray(response);

            for(int i=0;i<jArray.length();i++){
                JSONObject json_data = jArray.getJSONObject(i);
                jname = json_data.getString("name");
                jsurname = json_data.getString("Surname");
...
}
整个JSON字符串是一个
JSONArray

getJSONArray(0)
包含
JSONObject
s和
姓名


getJSONArray(1)
包含
JSONObject
s和
Job
Type

我要试试。你可能是对的,因为以前我尝试jArray.toString()时,它只返回第一个[]的内容。所以现在它应该返回大[]的内容了但是,我如何读取大文件中其他2[][]的内容呢?您不应该调用
toString
。您应该调用
getJSONObject(index)
JSONArray
上。是的,我知道,我只是在检查jArray的内容。你确定它是这样工作的吗?因为我看到的是一个数组,其中包含两个其他数组,然后每个数组都有一个对象。所以如果你说getJSONArray(0)那里确实没有JSONObject,但有一个数组。没有?是的,当然。数组中有两个数组,这两个数组包含您要读取的对象。如果您需要其他内容,您应该在问题中更清楚地说明。
[                                         
    [{"name":"Mark","Surname":"Gaux"}],
    [{"Job":"2","Type":"Office"}]
]