Skip to main content

Simple Json Parser in Android

Java Class:private JSONObject jObject;
        private String jString = "{\"itemmenu\":    {" +
                "\"itemid\": \"file\"," +
                " \"itemvalue\": \"File\"," +
                " \"itemarray\": { \"menuitem\": " +
                "[ " + "{\"value\": \"New\"  , " + 
                "\"onclick\": \"CreateNewDoc()\"}, " +
                " {\"value\": \"Open\"," + 
                " \"onclick\":" + " \"OpenDoc()\"}," +
                "{\"value\": \"Close\"," +
                " \"onclick\": \"CloseDoc()\"}" +
                "]}" +
                "}" +
                "}";

 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        try {
                parse();
            }
        catch (Exception e)
            {
                e.printStackTrace();
            } }
   
     private void parse() throws Exception {

//Create json object and use it to retrieve the data in it
      jObject = new JSONObject(jString);
      JSONObject menuObject = jObject.getJSONObject("itemmenu");
      String attributeId = menuObject.getString("itemid");
      System.out.println("THE ATTRIBUTE ID   IS.....1....."+attributeId);
      String attributeValue = menuObject.getString("itemvalue");
      System.out.println("THE ATTRIBUTE ID  IS.....2....."+attributeValue);
      JSONObject popupObject = menuObject.getJSONObject("itemarray");
      JSONArray menuitemArray =  popupObject.getJSONArray("menuitem");
      for (int i = 0; i < 3; i++) {
         System.out.println("THE ATTRIBUTE ID IS.....3....."+menuitemArray.getJSONObject(i)
                               .getString("value").toString());
         System.out.println("THE ATTRIBUTE ID IS.....4....."+menuitemArray.getJSONObject(i)
                               .getString("onclick").toString());
            } } }
The output is shown in Logcat:
                                         

Comments

Popular posts from this blog

Spannable String in Android - URL Span ,Clickable Span, Rich-Style Formatting of Textview .....

See more Android Tutorials here....... Faster Loading images in GridViews or ListViews Spannable brings lots of possibility to TextView, includes displaying various appearance of a Text and onClick callbak. The SpannableString class allows you to easily format certain pieces which are called spans of a string, by applying CharacterStyle ie,color, font, ormake it a link . Here is an example where, explained how to use spannable string to give font size, color, linking a text via clickable span and through URL Span and to strike through the text. Lets go through the example : import android.os.Bundle; import android.text.SpannableString; import android.text.method.LinkMovementMethod; import android.text.style.ClickableSpan; import android.text.style.ForegroundColorSpan; import android.text.style.RelativeSizeSpan; import android.text.style.StrikethroughSpan; import android.text.style.URLSpan; import android.view.View; import android.widget.TextView; import android.widget.Toast;

Passing Images between Activities in Android

in First Activity: Intent intent=new Intent(FirstClass.this, SecondClass.class); Bundle bundle=new Bundle(); bundle.putInt("image",R.drawable.ic_launcher); intent.putExtras(bundle); startActivity(intent); in Second Acticity: Bundle bundle=this.getIntent().getExtras(); int pic=bundle.getInt("image"); v.setImageResource(pic); another method: in First Activity: Drawable drawable=imgv.getDrawable(); Bitmap bitmap= ((BitmapDrawable)drawable).getBitmap(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos); byte[] b = baos.toByteArray(); Intent intent=new Intent(Passimage.this,myclass.class); intent.putExtra("picture", b); startActivity(intent); in Second Acticity: Bundle extras = getIntent().getExtras(); byte[] b = extras.getByteArray("picture"); Bitmap bmp = BitmapFactory.decodeByteArray(b, 0, b.lengt

Show and Resume Android Soft-Keyboard

Code to show keyboard: InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(yourEditText,InputMethodManager.SHOW_IMPLICIT); Code resume keyboard : InputMethodManager imm = (InputMethodManager)gettSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(yourEditText.getWindowToken(), 0);