Sample code for 30+ languages & platforms
Java

Get Contents of a T-Mobile Text Message (as Email)

See more Email Object Examples

How to get the contents of an email that originated as a T-Mobile SMS text.

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.Email;
import com.chilkatsoft.chilkat2.Mime;
import com.chilkatsoft.chilkat2.StringBuilder;

public class ChilkatExample {

    public static void main(String[] args) {
        // First, for the purpose of understanding the structure of the MIME,
        // let's load the MIME into a Chilkat MIME object and examine the MIME structure.
        Mime mime = new Mime();

        mime.loadMimeFile("qa_data/eml/TMobileTextMsg.eml");
        // Show the MIME structure in text format (as opposed to XML format).
        System.out.println(mime.getStructure("text"));

        // The MIME structure for our test email looks like this:
        // multipart/related
        //     text/html
        //     text/plain
        //     image/gif
        //     image/gif
        //     image/gif

        // The HTML part is not considered a "related item" because the related items
        // are defined as being related to the HTML part.  Therefore, we should always
        // expect to find a text/html part under a multipart/related.  The HTML parts
        // is simply the HTML body, and the other parts are the related items.
        // If the text/plain part was to be considered as an alternative body,
        // then a properly structured email would include a multipart/alternative structure.

        Email email = new Email();

        email.loadEml("qa_data/eml/TMobileTextMsg.eml");

        // We should see 4 related items.
        System.out.println("Num Related Items = " + email.getNumRelatedItems());
        // There should be 0 attachments.
        System.out.println("Num Attachments = " + email.getNumAttachments());

        // Find the indices of the text/plain related part, and the text/html related part
        int i = 0;
        int numRelatedItems = email.getNumRelatedItems();
        StringBuilder sbContentType = new StringBuilder();
        while (i < numRelatedItems) {
            sbContentType.append(email.getRelatedContentType(i));
            System.out.println(i + ": " + sbContentType.getAsString());
            if (sbContentType.contentsEqual("text/plain", false)) {
                System.out.println("---- text/plain part:");
                System.out.println(email.getRelatedString(i, "utf-8"));
            }

            sbContentType.clear();
            i = i + 1;
        }
    }
}