Sample code for 30+ languages & platforms
Xbase++

Ascii85 Encoding and Decoding

See more Encryption Examples

Demonstrates ascii85 encoding and decoding.

Note: Requires Chilkat v9.5.0.79 or greater.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oSb
LOCAL cEncodedAscii85
LOCAL oBd

nSuccess := 0

//  First demonstrate encoding strings to ascii85 and back.
oSb := CreateObject("Chilkat.StringBuilder")

nSuccess := oSb:Append("Man is distinguished, not only by his reason, but by this singular passion from other animals, which is a lust of the mind, that by a perseverance of delight in the continued and indefatigable generation of knowledge, exceeds the short vehemence of any carnal pleasure.")

cEncodedAscii85 := oSb:GetEncoded("ascii85", "utf-8")
? cEncodedAscii85

//  Result is: 9jqo^BlbD-BleB1DJ+*+F(f,q/0JhKF<GL>Cj@.4 ... DII?(E,9)oF*2M7/c

//  Decode back to the original:
oSb:Clear()
oSb:Append(cEncodedAscii85)
nSuccess := oSb:Decode("ascii85", "utf-8")
? "Original:"
? oSb:GetAsString()

//  ---- Now encode binary data to ascii85 ----
oBd := CreateObject("Chilkat.BinData")
nSuccess := oBd:LoadFile("qa_data/jpg/starfish20.jpg")
cEncodedAscii85 := oBd:GetEncoded("ascii85")
? cEncodedAscii85

//  Result is:  s4IA0!"_al8O`[\!<E0k!([(is8E!F7VQ[M+Eqj?FED)3+C]U=6"Fn ...

//  Decode...
oBd:Clear()
oBd:AppendEncoded(cEncodedAscii85, "ascii85")
nSuccess := oBd:WriteFile("qa_output/starfish20.jpg")

oSb:destroy()
oBd:destroy()