我是JSON的新手并尝试实现一些如何解析json响应但无法正确实现的示例。
我有响应并使用以下java代码:
import org.json.JSONArray;
import org.json.JSONObject;
BufferedReader br = new BufferedReader(new InputStreamReader((connection.getInputStream())));
final JSONObject obj = new JSONObject(br.readLine());
如果我打印JSONObject
我得到:
{ “XML片段”:{ “工作项”:[{ “ID”:{ “@ ID”: “251”, “@版本”: “1”}, “可见”:真 “状态” : “打开的”, “标题”:{ “@优先”: “50”, “标志”:{ “scheduleStatus”: “在”}, “@的startDate”: “2013-10-15T12:30:57.493Z” , “说明”: “UserReconcile”, “@ distributionStrategy”: “OFFER”, “名”: “UserReconcile”, “itemContext”:{ “APPNAME”: “NpdaProcess”, “appInstance”: “PVM:0a12iq”,” activityName “:” UserReconcile “ ”APPID“: ” -hYCETV8EeOr4-yR8gXd7g“, ”activityID“: ”PVM:001im4“}}},{ ”ID“:{ ”@ ID“: ”252“,” @version “:” 0 “},” 可见 “:真,” 状态 “:” 提供”, “标题”:{ “@优先”: “50”, “标志”:{ “scheduleStatus”: “在”} , “@的startDate”: “2013-10-15T12:31:15.263Z”, “描述”: “UserReconcile”, “@ distributionStrategy”: “提供”, “姓名”: “UserReconcile”, “itemContext”:{” APPNAME “:” NpdaProcess”, “appInstance”: “PVM:0a12ir”, “activityName”: “UserReconcile”, “APPID”: “ -hYCETV8EeOr4-yR8gXd7g”, “activityID”: “PVM:001imh”} }}], “TOTALITEMS”:2 “终端位置”:1, “指定startPosition”:0}}
然后我尝试:
final JSONArray geodata = obj.getJSONArray("workItems");
但是
JSONObject["workItems"] not found.
根据我在json doc中的理解,workItems应该是数组名称还是错误的?
答案 0 :(得分:0)
你的workitems数组仍在你的xml片段中。 尝试
final JSONArray geodata = obj.getJSONObject("xml-fragment").getJSONArray("workItems");