无法在Android中解析JSonArray

卡洛塞拉罗

我对此有些疑惑...

我有一个PHP脚本,它将以下Json字符串返回给Android应用程序。

{"result":"OK","teams":[{"id":"1","tname":"AAA","tcity":"Paris","tfy":"1901"},{"id":"2","tname":"BBB","tcity":"Barcelona","tfy":"1901"}]}

问题是由于某种原因,我无法使用以下Android代码读取由“团队”标识的JSonArray:

@Override
    protected void onPostExecute(String result)
    {
        dialog.dismiss();

        try {
            JSONArray teams = null;
            JSONObject json_response = new JSONObject(result);

            if(json_response.get("result").toString().compareTo("ERR")==0) {
                AlertDialog.Builder adig = new AlertDialog.Builder(ListTeamsActivity.this);
                adig.setMessage(json_response.get("status").toString());
                adig.setCancelable(true);
                AlertDialog diag = adig.create();
                diag.show();
            } else {
                // process the answer
                Log.d("debug_msg", "Teams = " + json_response.get("teams").toString());

                teams = new JSONArray(json_response.getJSONArray("teams"));

                for(int n=0; n< teams.length(); n++) {
                    JSONObject t = teams.getJSONObject(n);
                    arrTeams[n] = t.getString("tname");
                    Log.d("debug_msg", "Team = " + t.getString("tname"));
                }

                ArrayAdapter<String> adapter=new ArrayAdapter<String>(getApplicationContext(), android.R.layout.activity_list_item, arrTeams);
                lv.setAdapter(adapter);
            }

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

    }
}

这总是导致相同的错误:

org.json.JSONException: Not a primitive array: class org.json.JSONArray

这是完整的输出:

03-25 14:15:19.577: D/debug_msg(1960): Response = {"result":"OK","teams":[{"id":"1","tname":"Sport Lisboa e Benfica","tcity":"Lisboa","tfy":"1901"},{"id":"2","tname":"Sport Lisboa e Benfica","tcity":"Lisboa","tfy":"1901"}]}
03-25 14:15:19.647: D/debug_msg(1960): Teams = [{"tname":"Sport Lisboa e Benfica","id":"1","tfy":"1901","tcity":"Lisboa"},{"tname":"Sport Lisboa e Benfica","id":"2","tfy":"1901","tcity":"Lisboa"}]
03-25 14:15:19.657: W/System.err(1960): org.json.JSONException: Not a primitive array: class org.json.JSONArray
03-25 14:15:19.677: W/System.err(1960):     at org.json.JSONArray.<init>(JSONArray.java:116)
03-25 14:15:19.687: W/System.err(1960):     at pt.iscte.daam.soccerleague.ListTeamsActivity$ListTeams.onPostExecute(ListTeamsActivity.java:113)
03-25 14:15:19.697: W/System.err(1960):     at pt.iscte.daam.soccerleague.ListTeamsActivity$ListTeams.onPostExecute(ListTeamsActivity.java:1)
03-25 14:15:19.697: W/System.err(1960):     at android.os.AsyncTask.finish(AsyncTask.java:632)
03-25 14:15:19.697: W/System.err(1960):     at android.os.AsyncTask.access$600(AsyncTask.java:177)
03-25 14:15:19.707: W/System.err(1960):     at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:645)
03-25 14:15:19.707: W/System.err(1960):     at android.os.Handler.dispatchMessage(Handler.java:102)
03-25 14:15:19.707: W/System.err(1960):     at android.os.Looper.loop(Looper.java:137)
03-25 14:15:19.707: W/System.err(1960):     at android.app.ActivityThread.main(ActivityThread.java:4998)
03-25 14:15:19.707: W/System.err(1960):     at java.lang.reflect.Method.invokeNative(Native Method)
03-25 14:15:19.717: W/System.err(1960):     at java.lang.reflect.Method.invoke(Method.java:515)
03-25 14:15:19.717: W/System.err(1960):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:777)
03-25 14:15:19.717: W/System.err(1960):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:593)
03-25 14:15:19.727: W/System.err(1960):     at dalvik.system.NativeStart.main(Native Method)

感谢您的帮助....

皮尔逊艺术摄影

为什么要创建一个新的JSON数组?您不需要创建一个新的,只需直接获取它即可。

teams = json_response.getJSONArray("teams");

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在android中解析JSONArray NullPointerException

来自分类Dev

JSONArray 无法解析

来自分类Dev

解析JsonArray中的JsonArray(嵌套)

来自分类Dev

无法从Android中的JsonArray获得价值?

来自分类Dev

android json解析错误-无法将JSONArray转换为JSONObject

来自分类Dev

Android:JSONArray解析问题

来自分类Dev

Android:解析2 jsonArray

来自分类Dev

Android解析2 jsonarray

来自分类Dev

JSON Android解析JSONArray

来自分类Dev

PHP中的JSONArray解析

来自分类Dev

在Android中解析JSON响应“无法将org.json.JSONObject类型的响应转换为JSONArray”

来自分类Dev

在Android中解析具有多个值的JSONArray

来自分类Dev

解析Android Volley JSONArray响应

来自分类Dev

从资产解析 RecyclerView 中的 JSONArray

来自分类Dev

我无法解析为什么在我的android项目中解析JSON(如“ JSONObject无法转换为JSONArray”)时显示异常

来自分类Dev

无法使用改造来解析对象内部的jsonarray的jsonarray?

来自分类Dev

Android中的JSONArray替代

来自分类Dev

Android JSON解析“无法将org.json.JSONObject类型的数据转换为JSONArray”错误

来自分类Dev

麻烦的JsonObject解析无法转换为jsonarray

来自分类Dev

麻烦的JsonObject解析无法转换为jsonarray

来自分类Dev

Gson 无法将位于 json 对象中的 json 数组字符串解析为 JsonArray

来自分类Dev

如何在JavaScript中解析由Android JSONObjects组成的Android JSONArray?

来自分类Dev

Java android JsonArray解析器

来自分类Dev

无法在Android中解析方法getContext()

来自分类Dev

Android Studio预览中的“无法解析资源”

来自分类Dev

无法解析Android Studio中的库

来自分类Dev

无法在Android Studio中解析符号WebRTC

来自分类Dev

GPSTracker无法在Android Studio中解析

来自分类Dev

无法在Android Studio中解析符号“ LocationClient”

Related 相关文章

  1. 1

    如何在android中解析JSONArray NullPointerException

  2. 2

    JSONArray 无法解析

  3. 3

    解析JsonArray中的JsonArray(嵌套)

  4. 4

    无法从Android中的JsonArray获得价值?

  5. 5

    android json解析错误-无法将JSONArray转换为JSONObject

  6. 6

    Android:JSONArray解析问题

  7. 7

    Android:解析2 jsonArray

  8. 8

    Android解析2 jsonarray

  9. 9

    JSON Android解析JSONArray

  10. 10

    PHP中的JSONArray解析

  11. 11

    在Android中解析JSON响应“无法将org.json.JSONObject类型的响应转换为JSONArray”

  12. 12

    在Android中解析具有多个值的JSONArray

  13. 13

    解析Android Volley JSONArray响应

  14. 14

    从资产解析 RecyclerView 中的 JSONArray

  15. 15

    我无法解析为什么在我的android项目中解析JSON(如“ JSONObject无法转换为JSONArray”)时显示异常

  16. 16

    无法使用改造来解析对象内部的jsonarray的jsonarray?

  17. 17

    Android中的JSONArray替代

  18. 18

    Android JSON解析“无法将org.json.JSONObject类型的数据转换为JSONArray”错误

  19. 19

    麻烦的JsonObject解析无法转换为jsonarray

  20. 20

    麻烦的JsonObject解析无法转换为jsonarray

  21. 21

    Gson 无法将位于 json 对象中的 json 数组字符串解析为 JsonArray

  22. 22

    如何在JavaScript中解析由Android JSONObjects组成的Android JSONArray?

  23. 23

    Java android JsonArray解析器

  24. 24

    无法在Android中解析方法getContext()

  25. 25

    Android Studio预览中的“无法解析资源”

  26. 26

    无法解析Android Studio中的库

  27. 27

    无法在Android Studio中解析符号WebRTC

  28. 28

    GPSTracker无法在Android Studio中解析

  29. 29

    无法在Android Studio中解析符号“ LocationClient”

热门标签

归档