Lyan Rai
Lyan Rai

Reputation: 23

JSON parsing into textview Android

I have created a HTTP GET function that retrieves the response from my server and displays it as JSON in a textview.

How can I make the following into a string to be read by my textview.

{"response":"ok"}

Here is my HTTP GET request

public class GetMethodEx {

public String getInternetData() throws Exception {


BufferedReader in = null;
String data = null;

try {
    HttpClient client = new DefaultHttpClient();
    client.getConnectionManager().getSchemeRegistry().register(getMockedScheme());

    URI website = new URI("https://server.com:8443/login?username=hm&password=123");
    HttpGet request = new HttpGet();
    request.setURI(website);
    HttpResponse response = client.execute(request);
    response.getStatusLine().getStatusCode();

    in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
    StringBuffer sb = new StringBuffer("");
    String l = "";
    String nl = System.getProperty("line.separator");
    while ((l = in.readLine()) != null) {
        sb.append(l + nl);
    }
    in.close();
    data = sb.toString();
    return data;
} finally {
    if (in != null) {
        try {
            in.close();
            return data;
        } catch (Exception e) {
            Log.e("GetMethodEx", e.getMessage());
        }
    }
}

Upvotes: 1

Views: 8715

Answers (4)

Dipak Keshariya
Dipak Keshariya

Reputation: 22291

Use below code to parse json data.

JSONObject jObject;
try {
    jObject = new JSONObject(data);
    String mResponse = jObject.getString("response");
    mTxtView1.setText(mResponse);
} catch (JSONException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

Upvotes: 2

ZealDeveloper
ZealDeveloper

Reputation: 783

Try this :

    try {
            JSONObject jsonObject = new JSONObject(yourString);
            String response = jsonObject.getString("response");
            textView.setText(response);

    } catch (JSONException e) {

        e.printStackTrace();
    }

Upvotes: 0

intrepidkarthi
intrepidkarthi

Reputation: 3102

Use a Json Parser.

 //json parser for http get
 JSONParser jParser = new JSONParser();
 // getting JSON string from URL
 JSONObject json = jParser.getJSONFromUrl(url);
 String result = json.optString("response", "default");

JSONParser.java

public class JSONParser {
static InputStream is = null;
static JSONObject jObj = null;
static String json = "";
// constructor
public JSONParser() {
}

public JSONObject getJSONFromUrl(String url) {
    // Making HTTP request
    try {
        DefaultHttpClient httpClient = new DefaultHttpClient();
        HttpPost httpPost = new HttpPost(url);
        HttpResponse httpResponse = httpClient.execute(httpPost);
        HttpEntity httpEntity = httpResponse.getEntity();
        is = httpEntity.getContent();   
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (ClientProtocolException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    try {
        BufferedReader reader = new BufferedReader(new InputStreamReader(
                is, "iso-8859-1"), 8);
        StringBuilder sb = new StringBuilder();
        String line = null;
        while ((line = reader.readLine()) != null) {
            sb.append(line + "\n");
        }
        is.close();
        json = sb.toString();
    } catch (Exception e) {
        Log.e("Buffer Error", "Error converting result " + e.toString());
    }

    // try parse the string to a JSON object
    try {
        jObj = new JSONObject(json);
    } catch (JSONException e) {
        Log.e("JSON Parser", "Error parsing data " + e.toString());
    }

    // return JSON String
    return jObj;
 }
 }

Upvotes: 0

Nermeen
Nermeen

Reputation: 15973

i guess it whould be something like:

String json = "{\"response\":\"ok\"}";
JSONObject object = new JSONObject(json);
String response = object.getString("response");
TextView view = findViewById(id);
view.setText(response);

check http://www.androidhive.info/2012/01/android-json-parsing-tutorial/

Upvotes: 0

Related Questions