我想用Android上的任何键解析JSON。JSON数据包含任何键,数组或值。这是JSON数据和我的工作代码。我想通过使用JSON解析将JSON数据放入类中。
JSON数据:
{ "d520c8c17c8e": { "id":"25689123", "number":"0e31b1994" }, "d183c6e9913d": { "id":"25689123", "number":"0e31b1994" }, "content":"8090986565488990", "text":"hello", "status":"ok" }
我的代码:
public static MyInfo getMyInfo(JSONObject json) { MyInfo info = new MyInfo(); if (json == null) return null; try { info.setContent(json.getString("content")); info.setText(json.getString("text")); info.setStatus(json.getString("status")); ArrayList<MyList> mylists = new ArrayList<MyList>(); JSONArray panels = json.getJSONArray(????????????); for(int i=0;i < panels.length();i++){ JSONObject e2 = panels.getJSONObject(i); MyList info_list = new MyList(); info_list.setId(e2.getString("id")); info_list.setNumber(e2.getString("number")); info_list.add(info_answer); } info.setList(info_list); } catch (JSONException e) { } return info; }
请帮我。
是的,这是可能的。
将收到的JSON放在中JSONObject。您可以循环通过keys并从中values退出。
JSONObject
keys
values
例:
//Create json object from string JSONObject newJson = new JSONObject(json); // Get keys from json Iterator<String> panelKeys = newJson.keys(); while(panelKeys.hasNext()) { JSONObject panel = newJson.getJSONObject(panelKeys.next()); // get key from list String id = panel.getString("id"); String number = panel.getString("number"); }
我希望这就是你想要的