PureBasic
PureBasic
Set a MIME Body from Transfer-Encoded Text
See more MIME Examples
Demonstrates the Chilkat Mime.SetBodyFromEncoded method, which sets the body from already transfer-encoded text. The first argument is the encoding (base64 or quoted-printable) and the second is the encoded text.
Background: Sometimes you already hold content in its encoded form — a Base64 string from a database or another API — and re-decoding just to have Chilkat re-encode it is wasteful. This method stores the encoded text as-is and records the matching transfer encoding, so the body is correct without a needless round trip. Only the standard reversible encodings, Base64 and quoted-printable, are accepted.
Chilkat PureBasic Downloads
IncludeFile "CkMime.pb"
Procedure ChilkatExample()
success.i = 0
; Demonstrates the Mime.SetBodyFromEncoded method, which sets the body from already transfer-
; encoded text. The 1st argument is the encoding ("base64" or "quoted-printable") and the 2nd is
; the encoded text.
mime.i = CkMime::ckCreate()
If mime.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkMime::setCkContentType(mime, "text/plain")
; The body is provided already Base64-encoded; Chilkat stores it without re-encoding.
base64Body.s = "SGVsbG8sIHRoaXMgaXMgdGhlIGJvZHku"
success = CkMime::ckSetBodyFromEncoded(mime,"base64",base64Body)
If success = 0
Debug CkMime::ckLastErrorText(mime)
CkMime::ckDispose(mime)
ProcedureReturn
EndIf
; The decoded body is the original text.
decoded.s = CkMime::ckGetBodyDecoded(mime)
If CkMime::ckLastMethodSuccess(mime) = 0
Debug CkMime::ckLastErrorText(mime)
CkMime::ckDispose(mime)
ProcedureReturn
EndIf
Debug decoded
CkMime::ckDispose(mime)
ProcedureReturn
EndProcedure