JSON Parsing in Android?

0

 JSON Parsing in Android?


JSON means JavaScript object notation, It is the format for sending and receiving data from one platform to another.

JSON uses JSON Objects and JSON arrays to contain single rows and multiple rows records.

{"rno":1001, "name": "XYZ"}   // it is called JSON Object,  {} is for Object

{{"rno":1001, "name": 'XYZ'},  {"rno":1002, "name": 'back'}]}    // it is called JSON Array []

It is a lightweight pattern for sending and receiving data. mostly RESTFUL API uses JSON to communicate data.

What is JSON Parsing?

JSON parsing means displaying JSON data and integrating it into the Android widget.

Android Provides predefined classes to display JSON Format data.


JSONObject:-     It is a predefined class that is used to display JSON data in the String format.

JSONObject obj = new JSONObject(JSON_STRING);


getJSONObject():-  It is used to display JSON content using key

JSONObject ref = obj.getJSONObject("key");

ref,getString()   , ref.getInt()


SIMPLE EXAMPLE OF JSON PARSING IN ANDROID BY SHIVA SIR:-

CODE FOR DESIGN FILE:-

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".JsonExample">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#000"
android:id="@+id/txt1"></TextView>

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/txt2">

</TextView>
</LinearLayout>

CODE FOR ACTIVITY FILE:-
package com.example.webviewexample;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.widget.TextView;

import org.json.JSONObject;

public class JsonExample extends AppCompatActivity {

String JSON_STRING = "{\"employee\":{\"name\":\"SHIVA GAUTAM\",\"salary\":65000}}";
String name,salay;
TextView txt1,txt2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_json_example);
txt1 = findViewById(R.id.txt1);
txt2 = findViewById(R.id.txt2);
try {
JSONObject jo1 = new JSONObject(JSON_STRING);
JSONObject jo = jo1.getJSONObject("employee");
String sname = jo.getString("name");
int sal = jo.getInt("salary");
txt1.setText("name is "+sname);
txt2.setText("salary is "+sal);
}
catch (Exception ex)
{

}



}
}

JSON EXAMPLE 2:-

CREATE DESIGN FILE:-
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".JSONExample2">

<ListView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/lstres"
></ListView>

</RelativeLayout>


CREATE CODE FILE:-

package com.example.webviewexample;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;

import org.json.JSONObject;

import java.util.ArrayList;
import java.util.List;
import org.json.JSONArray;
public class JSONExample2 extends AppCompatActivity {

ListView lstres;
String json_string = "{\n" +
" \"title\":\"JSONParserTutorial\",\n" +
" \"array\":[\n" +
" {\n" +
" \"company\":\"Google\"\n" +
" },\n" +
" {\n" +
" \"company\":\"Facebook\"\n" +
" },\n" +
" {\n" +
" \"company\":\"LinkedIn\"\n" +
" },\n" +
" {\n" +
" \"company\" : \"Microsoft\"\n" +
" },\n" +
" {\n" +
" \"company\": \"Apple\"\n" +
" }\n" +
" ],\n" +
" \"nested\":{\n" +
" \"flag\": true,\n" +
" \"random_number\":1\n" +
" }\n" +
"}";


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_j_s_o_n_example2);
lstres = findViewById(R.id.lstres);
List<String> items = new ArrayList<>();
try {
JSONObject root = new JSONObject(json_string);

JSONArray array= root.getJSONArray("array");

this.setTitle(root.getString("title"));
for(int i=0;i<array.length();i++)
{
JSONObject object= array.getJSONObject(i);
items.add(object.getString("company"));
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, items);

if (lstres != null) {
lstres.setAdapter(adapter);
}



}
catch (Exception ex)
{

}


}
}

Post a Comment

0Comments

POST Answer of Questions and ASK to Doubt

Post a Comment (0)