Sample code for 30+ languages & platforms
Java

Attach a File to an Email

See more Email Object Examples

Demonstrates the Chilkat Email.AddFileAttachment method, which attaches a file read from the filesystem. It returns the content type Chilkat assigned to the attachment (inferred from the file extension). This example attaches a PDF and prints its detected content type.

Background: Each attachment carries a Content-Type (MIME type) such as application/pdf or image/png that tells the receiving client how to handle it. Chilkat gets this from the file's extension. Because attachment bytes are binary, they are Base64-encoded for transport, which is handled automatically — you simply point AddFileAttachment at a path and the file is read, encoded, and packaged into the message.

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Email;

public class ChilkatExample {

    public static void main(String[] args) {
        // Demonstrates the AddFileAttachment method, which attaches a file read from the
        // filesystem.  It returns the content type Chilkat assigned to the attachment (based on
        // the file extension), or returns failure if the file could not be read.

        Email email = new Email();
        email.setSubject("Email with a file attachment");
        email.setBody("Please see the attached file.");

        // Attach a file.  The return value is the auto-detected content type.
        String contentType;
        try {
            contentType = email.addFileAttachment("qa_data/attachments/report.pdf");
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        System.out.println("Attached content type = " + contentType);
        System.out.println("NumAttachments = " + email.getNumAttachments());

        // Note: The path "qa_data/attachments/report.pdf" is a relative local filesystem path,
        // relative to the current working directory of the running application.
    }
}