Sample code for 30+ languages & platforms
Android™

Demonstrate Binary Data Encoding Methods

Demonstrates binary data encoding methods.

Note: This example requires Chilkat v9.5.0.64 or later.

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);

    CkBinData binData = new CkBinData();

    //  Append 10 bytes: 00, 01, 02, 03, 04, 05, 06, 07, 08, 09
    binData.AppendEncoded("00010203040506070809","hex");

    //  Show that binData contains 10 bytes.
    Log.i(TAG, "num bytes = " + String.valueOf(binData.get_NumBytes()));

    //  Get as base64
    Log.i(TAG, "base64: " + binData.getEncoded("base64"));

    //  Get a chunk of the binary data.
    //  The 1st byte is at index 0.
    //  The output should be "02030405"
    int offset = 2;
    int numBytes = 4;
    Log.i(TAG, "chunk: " + binData.getEncodedChunk(offset,numBytes,"hex"));

    //  Copy the bytes to a StringBuilder using the base64url encoding
    CkStringBuilder sb = new CkStringBuilder();
    binData.GetEncodedSb("base64url",sb);
    Log.i(TAG, "base64url: " + sb.getAsString());

    //  Remove a chunk from the binary data
    offset = 2;
    numBytes = 4;
    binData.RemoveChunk(offset,numBytes);
    //  The bytes remaining are 00,01,06,07,08,and 09
    Log.i(TAG, "after removing chunk: " + binData.getEncoded("hex"));

  }

  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."
  }
}