Sample code for 30+ languages & platforms
Perl

Get an Attachment's Bytes into a BinData

See more Email Object Examples

Demonstrates the Chilkat Email.GetAttachmentBd method, which copies an attachment's binary data into a BinData object. The first attachment is at index 0. This example adds an attachment and copies its bytes into a BinData, printing the byte count.

Background: This is the safe, binary way to extract an attachment — the counterpart to the text-oriented GetAttachmentString. Because attachments are often binary (PDFs, images, archives), copying the raw bytes into a BinData preserves them exactly, ready to write to a file, hash, or pass to another API without any charset conversion that could corrupt the data.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

#  Demonstrates the GetAttachmentBd method, which copies an attachment's binary data into a
#  BinData object.  The first attachment is at index 0.

$email = chilkat::CkEmail->new();
$email->put_Subject("GetAttachmentBd example");

$email->AddStringAttachment("notes.txt","Some notes stored in the attachment.");

#  Copy the first attachment's binary data into a BinData object.
$bd = chilkat::CkBinData->new();
$success = $email->GetAttachmentBd(0,$bd);
if ($success == 0) {
    print $email->lastErrorText() . "\r\n";
    exit;
}

print "Attachment size (bytes) = " . $bd->get_NumBytes() . "\r\n";