(Tcl) MIME Header Q and B Encoding and Decoding
Demonstrates how to Q and B encode/decode.
load ./chilkat.dll
set sb [new_CkStringBuilder]
CkStringBuilder_Append $sb "This is a test"
puts [CkStringBuilder_getEncoded $sb B utf-8]
# output is:
# =?utf-8?B?VGhpcyBpcyBhIHRlc3Q=?=
puts [CkStringBuilder_getEncoded $sb Q iso-8859-1]
# output is:
# =?utf-8?Q?This_is_a_test?=
set sb2 [new_CkStringBuilder]
CkStringBuilder_Append $sb2 "=?utf-8?B?VGhpcyBpcyBhIHRlc3Q=?="
CkStringBuilder_Decode $sb2 "B" "utf-8"
puts [CkStringBuilder_getAsString $sb2]
# output is:
# This is a test
CkStringBuilder_Clear $sb2
CkStringBuilder_Append $sb2 "=?utf-8?Q?This_is_a_test?="
CkStringBuilder_Decode $sb2 "Q" "utf-8"
puts [CkStringBuilder_getAsString $sb2]
# output is:
# This is a test
# "B" or "Q" will decode both B and Q.
CkStringBuilder_Clear $sb2
CkStringBuilder_Append $sb2 "=?utf-8?Q?This_is_a_test?= 123 =?utf-8?B?VGhpcyBpcyBhIHRlc3Q=?="
CkStringBuilder_Decode $sb2 "Q" "utf-8"
puts [CkStringBuilder_getAsString $sb2]
# output is:
# This is a test 123 This is a test
delete_CkStringBuilder $sb
delete_CkStringBuilder $sb2
|