Sample code for 30+ languages & platforms
Zig

Load an Email from a .eml File

See more Email Object Examples

Demonstrates the Chilkat Email.LoadEml method, which loads a complete email from an .eml file. An EML file contains RFC822/MIME message text. On success, the loaded message replaces the entire current email — recipients, headers, bodies, related items, and attachments. This example loads an EML and reads its subject and from.

Background: .eml is the standard on-disk format for a single email — it is simply the raw MIME saved to a file, which most mail clients can export and open. LoadEml parses that MIME into a fully populated Email object, giving you programmatic access to every part. It is the natural counterpart to SaveEml.

Chilkat Zig Downloads

Zig
const std = @import("std");
const chilkat = @import("chilkat");

pub fn main(init: std.process.Init) !void {
    const alloc = init.arena.allocator();

    // Demonstrates the LoadEml method, which loads a complete email from an .eml file (an EML
    // file contains RFC822/MIME message text).  On success, the loaded message replaces the
    // entire current email.

    const email = try chilkat.Email.init();
    defer email.deinit();

    email.loadEml("qa_data/eml/message.eml") catch {
        std.debug.print("{s}\n", .{try email.getLastErrorText(alloc)});
        return;
    };

    std.debug.print("Subject: {s}\n", .{try email.getSubject(alloc)});
    std.debug.print("From: {s}\n", .{try email.getFrom(alloc)});

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