Sample code for 30+ languages & platforms
Java

Remove a Header Field from an Email

See more Email Object Examples

Demonstrates the Chilkat Email.RemoveHeaderField method, which removes by name all occurrences of a header field. Header-field names are case-insensitive, and every repeated occurrence with the given name is removed. This example adds a custom header, then removes it.

Background: Editing a message sometimes means deleting a header outright — stripping a tracking header, removing an X- flag before forwarding, or clearing a stale field before re-sending. Because a field name can appear more than once (like Received), RemoveHeaderField removes all matching occurrences in one call rather than just the first.

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 RemoveHeaderField method, which removes by name all occurrences of a
    //  header field.  Header-field names are case-insensitive.

    CkEmail email = new CkEmail();
    email.put_Subject("Remove header field");
    email.put_From("alice@example.com");

    email.AddHeaderField("X-Custom-Header","some value");

    //  Use HasHeaderMatching to test for the header's presence.  ("*" matches any value.)
    boolean hasBefore = email.HasHeaderMatching("X-Custom-Header","*",false);
    System.out.println("Has X-Custom-Header before: " + hasBefore);

    //  Remove all occurrences of the header field.
    email.RemoveHeaderField("X-Custom-Header");

    boolean hasAfter = email.HasHeaderMatching("X-Custom-Header","*",false);
    System.out.println("Has X-Custom-Header after: " + hasAfter);
  }
}