简体   繁体   中英

Json Parsing in Android Application

After completing the XML SAX Parsing now I am working on JSON Parsing in my application. Here I am providing you the Json

Response : {"menu": {
              "id": "file",
              "value": "File",
              "popup": {
                "menuitem": [
                  {"value": "New", "onclick": "CreateNewDoc()"},
                  {"value": "Open", "onclick": "OpenDoc()"},
                  {"value": "Close", "onclick": "CloseDoc()"}
                ]
              }
            }}

Now I had referred one example of Json Parsing in which they had created a jString Object and I had a doubt in that particular line which is as under :

private String jString = "{\"menu\":    {\"id\": \"file\", \"value\": \"File\", \"

Can anyone make me clear about it please. The Link of the Complete Example is as Under:

http://www.androidcompetencycenter.com/2009/10/json-parsing-in-android/

You can get a JSON object from the response like this (I assume you know how to take care of the response):

String[] file = null;

/* Make a JSON object from your response, yourResponse is a String containing
the whole response */
JSONObject jsonObject = new JSONObject(yourResponse);

/* Your "menu": array from your response */
JSONArray infoArray = jsonObject.getJSONArray("menu"); 

/* If the array contains multiple items, loop it
through the infoArray's size */
for (int i = 0; i < infoArray.length(); i++) {  
        try {    
          //Get the value inside "id"
          file[i] = infoArray.getJSONObject(i).optString("id");                  
            } catch (JSONException e) {
            }       
}
private String jString = "{\"menu\":    {\"id\": \"file\", \"value\": \"File\", \"

They are just creating a string that will look like:

{"menu":    {"id": "file", "value": "File", .. etc.

They use \\ because the " char has to be escaped.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM