簡體   English   中英

如何將JSONobject轉換為JSonArray…?

[英]how to convert JSONobject to JSonArray…?

我有回應

{

"p1":{
"date":"Sat, 29 Jul 2017 03:31:43 GMT",
"plan_id":"5c4c6548-38cb-4dbb-b7a3-a3f260fb8532",
"plan_name":"Ultra50",
"pulse":1,
"tarrif":1,
"validity":30
},
"p2":{
"date":"Sat, 29 Jul 2017 03:31:43 GMT",
"plan_id":"5c4c6548-38cb-4dbb-b7a3-a3f260fb8532",
"plan_name":"Ultra50",
"pulse":1,
"tarrif":1,
"validity":30
}
}

這是我的代碼

 Response.Listener<JSONObject> responseListener = new Response.Listener<JSONObject>() {

        @Override
        public void onResponse(JSONObject response) {
            try {

                JSONObject plan=response.getJSONObject("p1");
                Iterator x=plan.keys();
                JSONArray jsonElements=new JSONArray();
                while (x.hasNext()){
                    String key=(String) x.next();
                    jsonElements.put(plan.get(key));
                    Log.e(TAG, "onResponse: "+key );

                }
                Log.d(TAG, "onResponse: "+jsonElements.toString());
            } catch (JSONException e) {
                e.printStackTrace();
            }

如何在一個JsonArray中轉換p1,p2,p3?

您應該使用ITERATOR

它用於遍歷一個集合對象元素。

 Iterator  iteratorObj = response.keys();
        while (iteratorObj.hasNext())
        {
            String getKEY = (String)iteratorObj.next();
            System.out.println("Key: " + Key + "------>" + getKEY); // p1,p2
        }
  1. 將對象轉換為字符串
  2. 將First {替換為[,last}替換為]
  3. 將字符串轉換為JSONArray
 String res = response.toString().trim(); res = res.replaceFirst("\\{","]"); res = res.substring(0,res.length()-1) + "]"; try { JSONArray arr = new JSONArray(res.toString()); }catch (JSONException j) { } 
Iterator planKeys = response.keys();
{
    JSONArray jsonElements=new JSONArray();
    while(planKeys.hasNext()){
        String key = (String) planKeys.next();
        JSONObject plan = response.getJSONObject(key);
        Iterator x=plan.keys();
        while (x.hasNext()){
            String key=(String) x.next();
            jsonElements.put(plan.get(key));
            Log.e(TAG, "onResponse: "+key );

        }
    }
}

JSONObject plan=response.getJSONObject("p1");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM