Sample code for 30+ languages & platforms
Android™

Get Email Date/Time

Demonstrates getting the email "Date" header field in a CkDateTime object.

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;

    CkEmail email = new CkEmail();

    // Load a .eml file into the email object.
    success = email.LoadEml("/home/users/chilkat/eml/myEml.eml");

    CkDateTime dtTime = new CkDateTime();
    dtTime.SetFromRfc822(email.emailDateStr());

    // Once we have the CkDateTime object, we can get the date/time in many different formats:

    // Get as a RFC822 GMT string:
    boolean bLocalTime = false;
    Log.i(TAG, dtTime.getAsRfc822(bLocalTime));

    // Get as an RFC822 string in the local timezone.
    // (remember, the daylight savings that existed at the given time in the past is applied)
    bLocalTime = true;
    Log.i(TAG, dtTime.getAsRfc822(bLocalTime));

    // Get as a 32-bit UNIX time (local or GMT..)
    // The Unix time is number of seconds since the Epoch, 1970-01-01 00:00:00 +0000 (UTC). 
    int unixTime = dtTime.GetAsUnixTime(bLocalTime);
    Log.i(TAG, "Unix time: " + String.valueOf(unixTime));

    // One can also get the as a "DtObj" object for accessing the individual
    // parts of the date/time, such as month, day, year, hour, minute, etc.
    // The DtObj can be obtained in the GMT or local timezone:
    CkDtObj dtObj = new CkDtObj();
    dtTime.ToDtObj(bLocalTime,dtObj);

    if (dtTime.get_LastMethodSuccess() == false) {
        Log.i(TAG, "This should never really happen!");
        return;
        }

    Log.i(TAG, String.valueOf(dtObj.get_Day()) + "-" + String.valueOf(dtObj.get_Month()) + "-" + String.valueOf(dtObj.get_Year())
         + " " + String.valueOf(dtObj.get_Hour()) + ":" + String.valueOf(dtObj.get_Minute()) + ":" + String.valueOf(dtObj.get_Second()));

  }

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