Sample code for 30+ languages & platforms
Java

Build an EDIFACT Email Body

See more Email Object Examples

Demonstrates the Chilkat Email.SetEdifactBody method, a convenience that constructs the customary MIME headers and body for sending an EDIFACT message. It sets the body to the EDIFACT content, sets Content-Transfer-Encoding to Base64, sets Content-Type to application/EDIFACT (with a name attribute from the 2nd argument), and sets Content-Disposition to attachment (with a filename from the 3rd argument). The 4th argument is the charset the message is converted to before Base64 encoding. The subject, recipients, and FROM are left unchanged.

Background: EDIFACT is a long-standing international standard for Electronic Data Interchange (EDI) — structured business documents such as purchase orders (ORDERS) and invoices (INVOIC) exchanged between trading partners. Sending EDIFACT over email requires wrapping the payload in a specific set of MIME headers; SetEdifactBody handles that boilerplate so the message is formatted the way EDI systems expect.

Chilkat Java Downloads

Java
import com.chilkatsoft.*;

public class ChilkatExample {

  static {
    try {
        System.loadLibrary("chilkat");
    } catch (UnsatisfiedLinkError e) {
      System.err.println("Native code library failed to load.\n" + e);
      System.exit(1);
    }
  }

  public static void main(String argv[])
  {
    //  Demonstrates the SetEdifactBody method, which builds a typical email for sending an
    //  EDIFACT message.  It sets the body to the EDIFACT content, sets Content-Transfer-Encoding
    //  to Base64, Content-Type to application/EDIFACT (with a name attribute), and
    //  Content-Disposition to attachment (with a filename).  The fourth argument is the charset.

    CkEmail email = new CkEmail();
    email.put_Subject("EDIFACT ORDERS message");
    email.put_From("edi@example.com");
    email.AddTo("Trading Partner","partner@example.com");

    //  The EDIFACT message content (an ORDERS interchange, abbreviated here).
    String edi = "UNA:+.? 'UNB+UNOB:1+SENDER+RECEIVER+260710:1200+1'UNH+1+ORDERS:D:96A:UN'BGM+220+ORD12345+9'UNT+3+1'UNZ+1+1'";

    //  Build the EDIFACT email body.
    email.SetEdifactBody(edi,"order.edi","order.edi","iso-8859-1");

    System.out.println(email.getMime());
  }
}