Sample code for 30+ languages & platforms
Android™

JSON: Miscellaneous Operations

See more JSON Examples

Demonstrates a variety of JSON API methods. This example uses the following JSON document:
{
   "alphabet": "abcdefghijklmnopqrstuvwxyz",
   "sampleData" : {
           "pi": 3.14,
	   "apple": "juicy",
	   "hungry": true,
	   "withoutValue": null,
           "answer": 42
          
	}
}

Chilkat Android™ Downloads

Android™
// Important: Don't forget to include the call to System.loadLibrary
// as shown at the bottom of this code sample.
package com.test;

import android.app.Activity;
import com.chilkatsoft.*;

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

public class SimpleActivity extends Activity {

  private static final String TAG = "Chilkat";

  // Called when the activity is first created.
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    boolean success = false;

    CkJsonObject json = new CkJsonObject();
    json.put_EmitCompact(false);

    // Assume the file contains the data as shown above..
    success = json.LoadFile("qa_data/json/sample2.json");
    if (success == false) {
        Log.i(TAG, json.lastErrorText());
        return;
        }

    // Get the "sampleData" object:
    CkJsonObject sampleData = new CkJsonObject();
    json.ObjectOf2("sampleData",sampleData);

    // Demonstrate BoolAt and BoolOf
    Log.i(TAG, "hungry: " + String.valueOf(sampleData.BoolOf("hungry")));
    Log.i(TAG, "hungry: " + String.valueOf(sampleData.BoolAt(2)));

    // StringOf returns the value as a string regardless of it's actual type:
    Log.i(TAG, "pi: " + sampleData.stringOf("pi"));
    Log.i(TAG, "answer: " + sampleData.stringOf("answer"));
    Log.i(TAG, "withoutValue: " + sampleData.stringOf("withoutValue"));
    Log.i(TAG, "hungry: " + sampleData.stringOf("hungry"));

    // Demonstrate IsNullOf / IsNullAt
    Log.i(TAG, "withoutValue is null? " + String.valueOf(sampleData.IsNullOf("withoutValue")));
    Log.i(TAG, "withoutValue is null? " + String.valueOf(sampleData.IsNullAt(3)));
    Log.i(TAG, "apple is null? " + String.valueOf(sampleData.IsNullOf("apple")));
    Log.i(TAG, "apple is null? " + String.valueOf(sampleData.IsNullAt(1)));

    // IntOf
    Log.i(TAG, "answer: " + String.valueOf(sampleData.IntOf("answer")));

    // SetNullAt, SetNullOf
    // Set "pi" to null
    success = sampleData.SetNullAt(0);
    // Set "answer" to null
    success = sampleData.SetNullOf("answer");

    // Show the changes:
    Log.i(TAG, json.emit());

    // Restore pi and apple:
    success = sampleData.SetNumberAt(0,"3.14");
    success = sampleData.SetNumberOf("answer","42");

    // Show the changes:
    Log.i(TAG, json.emit());

    // Add a null value named "afterApple" just after "apple"
    success = sampleData.AddNullAt(2,"afterApple");

    // Add a boolean value just after "pi"
    success = sampleData.AddBoolAt(1,"afterPi",false);

    // Examine the changes..
    Log.i(TAG, json.emit());

  }

  static {
      System.loadLibrary("chilkat");

      // Note: If the incorrect library name is passed to System.loadLibrary,
      // then you will see the following error message at application startup:
      //"The application <your-application-name> has stopped unexpectedly. Please try again."
  }
}