如何在Android中打印此类JSON?

时间:2017-08-19 11:57:56

标签: php android json

如何在Android中打印此类JSON对象?它包含jsonObject中的jsonArray。

这是我的PHP文件输出:

           {
             "response": [
               { 
               "cat_id": "1",
               "cat_name": "abc",
                "cat_status": "1"
              },
              {
               "cat_id": "2",
               "cat_name": "abc",
               "cat_status": "1"
              },
              {
              "cat_id": "3",
              "cat_name": "abc",
              "cat_status": "1"



             }

             ]
             }

3 个答案:

答案 0 :(得分:0)

使用此:

Log.d("Data", obj.toString());

答案 1 :(得分:0)

你需要在 String 类型变量中获取它,让我们说 responseString 而不是遵循代码

    JSONObject  jsonRootObject = new JSONObject(responseString);
    JSONArray jsonArray = jsonRootObject.optJSONArray("response");
    String result = "", cat_id = "", cat_name = "", cat_status = ""; 
    for(int i=0; i < jsonArray.length(); i++){  

                            JSONObject jsonObject = jsonArray.getJSONObject(i);  
                            cat_id = jsonObject.optString("cat_id").toString();
                            cat_name = jsonObject.optString("cat_name").toString();
                            cat_status = jsonObject.optString("cat_status").toString();

    result += cat_id+"\n"+cat_name+"\n"+cat_status+"\n";                           
    }
textView_to_display_data_on_screen.setText(result);

它会将您的所有数据打印到textView(即此处 textView_to_display_data_on_screen )。

答案 2 :(得分:0)

试试这个

fisrt获取下面的JSONArray

JSONObject json = new JSONObject(JsonResponseString);// get JSONObject from respones 
JSONArray jArray = json.getJSONArray("response");   // get JSONArray from json object

现在从jsonArray获取您的数据,如下面的代码

for(int i=0; i<jArray.length(); i++){

  JSONObject json_data = jArray.getJSONObject(i);           // get your json object from array

  Log.d("cat_id", json_data.getString("cat_id"));          // get your cat_id

  Log.d("cat_name", json_data.getString("cat_name"));     // get your cat_name

  Log.d("cat_status", json_data.getString("cat_status"));// get your cat_status

}