Zig
Zig
Add a String Attachment to an Email
See more Email Object Examples
Demonstrates the Chilkat Email object's AddStringAttachment method, which adds an attachment directly from an in-memory string — no file needs to exist on disk. The 1st argument is the filename that is written into the MIME (it is not a path to a file that is read), and the 2nd argument is the text that becomes the attachment's body. In this example we build a simple email, attach a small CSV file namedpeople.csv straight from a string, and then print the resulting MIME so you can see the attachment embedded in the message.
Chilkat Zig Downloads
const std = @import("std");
const chilkat = @import("chilkat");
pub fn main(init: std.process.Init) !void {
const alloc = init.arena.allocator();
// This example demonstrates the Email object's AddStringAttachment method.
// AddStringAttachment adds an attachment directly from an in-memory string.
// The 1st argument is the filename to be placed in the MIME (not a file to be read).
// The 2nd argument is the text content that becomes the attachment body.
const email = try chilkat.Email.init();
defer email.deinit();
email.setSubject("Email with a string attachment");
email.setBody("See the attached CSV file.");
email.setFrom("mary@example.com");
email.addTo("Joe", "joe@example.com") catch {};
// The text content of the attachment.
const csv_data = "id,name\r\n1,Alice\r\n2,Bob\r\n";
// Add the string as an attachment named "people.csv".
email.addStringAttachment("people.csv", csv_data) catch {};
// Show the full MIME of the email, which now includes the attachment.
std.debug.print("{s}\n", .{try email.getMime(alloc)});
}