Tcl
Tcl
Ascii85 Encoding and Decoding
See more Encryption Examples
Demonstrates ascii85 encoding and decoding.Note: Requires Chilkat v9.5.0.79 or greater.
Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# First demonstrate encoding strings to ascii85 and back.
set sb [new_CkStringBuilder]
set success [CkStringBuilder_Append $sb "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."]
set encodedAscii85 [CkStringBuilder_getEncoded $sb "ascii85" "utf-8"]
puts "$encodedAscii85"
# Result is: 9jqo^BlbD-BleB1DJ+*+F(f,q/0JhKF<GL>Cj@.4 ... DII?(E,9)oF*2M7/c
# Decode back to the original:
CkStringBuilder_Clear $sb
CkStringBuilder_Append $sb $encodedAscii85
set success [CkStringBuilder_Decode $sb "ascii85" "utf-8"]
puts "Original:"
puts [CkStringBuilder_getAsString $sb]
# ---- Now encode binary data to ascii85 ----
set bd [new_CkBinData]
set success [CkBinData_LoadFile $bd "qa_data/jpg/starfish20.jpg"]
set encodedAscii85 [CkBinData_getEncoded $bd "ascii85"]
puts "$encodedAscii85"
# Result is: s4IA0!"_al8O`[\!<E0k!([(is8E!F7VQ[M+Eqj?FED)3+C]U=6"Fn ...
# Decode...
CkBinData_Clear $bd
CkBinData_AppendEncoded $bd $encodedAscii85 "ascii85"
set success [CkBinData_WriteFile $bd "qa_output/starfish20.jpg"]
delete_CkStringBuilder $sb
delete_CkBinData $bd