Sample code for 30+ languages & platforms
PureBasic

Get a Related Item as Text with CRLF Line Endings

See more Email Object Examples

Demonstrates the Chilkat Email.GetRelatedStringCrLf method, which returns the text of a related item with CRLF (\r\n) line-endings, interpreting the item's bytes using the supplied charset. It is intended for text-based related items such as style sheets. This example reads an embedded CSS style sheet with normalized CRLF line endings.

Background: Embedded text may arrive with any style of line ending — bare LF, bare CR, or CRLF. This method normalizes them all to CRLF, which is what internet protocols and many Windows tools expect, avoiding mixed-newline problems when the text is written out or re-transmitted. It is the CRLF counterpart to GetRelatedString (which uses bare CR).

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkEmail.pb"

Procedure ChilkatExample()

    ;  Demonstrates the GetRelatedStringCrLf method, which returns the text of a related item
    ;  with CRLF line-endings, interpreting the bytes using the specified charset.  This is
    ;  intended for text-based related items such as style sheets.  The index is zero-based.

    email.i = CkEmail::ckCreate()
    If email.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkEmail::setCkSubject(email, "GetRelatedStringCrLf example")

    ;  The HTML references a related style sheet by name (Content-Location).
    CkEmail::ckSetHtmlBody(email,"<html><head><link rel=" + Chr(34) + "stylesheet" + Chr(34) + " href=" + Chr(34) + "styles.css" + Chr(34) + "/></head><body>Styled.</body></html>")

    ;  Add the related style sheet (index 0).
    CkEmail::ckAddRelatedString2(email,"styles.css","body { color: navy; }" + Chr(10) + "h1 { color: teal; }","utf-8")

    ;  Get the first related item (index 0) as text with CRLF line endings.
    content.s = CkEmail::ckGetRelatedStringCrLf(email,0,"utf-8")
    Debug "Related item 0 text (CRLF-normalized):"
    Debug content


    CkEmail::ckDispose(email)


    ProcedureReturn
EndProcedure