Sample code for 30+ languages & platforms
PowerBuilder

Get an Attachment as a Text String

See more Email Object Examples

Demonstrates the Chilkat Email.GetAttachmentString method, which returns the Nth attachment's data as text. The first argument is the zero-based attachment index and the second is the charset used to interpret the attachment bytes. This example reads a text attachment as utf-8.

Background: Attachments are stored as bytes, so turning one back into a string requires knowing its charset — the rule for mapping bytes to characters. Supplying the correct charset (often utf-8) yields readable text; the wrong one produces garbled characters. This method is meant for text attachments such as .txt, .csv, or .xml; binary attachments should be handled as raw data instead.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
oleobject loo_Email
string ls_Content

//  Demonstrates the GetAttachmentString method, which returns the Nth attachment's data as
//  text.  The first argument is the zero-based attachment index and the second is the charset used to interpret
//  the attachment bytes.

loo_Email = create oleobject
li_rc = loo_Email.ConnectToNewObject("Chilkat.Email")
if li_rc < 0 then
    destroy loo_Email
    MessageBox("Error","Connecting to COM object failed")
    return
end if
loo_Email.Subject = "Attachment as text"

loo_Email.AddStringAttachment("notes.txt","These are the notes stored in the attachment.")

//  Get the first attachment (index 0) as text, interpreting the bytes as utf-8.
ls_Content = loo_Email.GetAttachmentString(0,"utf-8")
Write-Debug "Attachment 0 text: " + ls_Content


destroy loo_Email