Provided by: tcllib_1.19-dfsg-2_all bug

NAME

       base64 - base64-encode/decode binary data

SYNOPSIS

       package require Tcl  8

       package require base64  ?2.4.2?

       ::base64::encode ?-maxlen maxlen? ?-wrapchar wrapchar? string

       ::base64::decode string

_________________________________________________________________________________________________

DESCRIPTION

       This package provides procedures to encode binary data into base64 and back.

       ::base64::encode ?-maxlen maxlen? ?-wrapchar wrapchar? string
              Base64  encodes the given binary string and returns the encoded result. Inserts the
              character wrapchar every maxlen characters of output. wrapchar defaults to newline.
              maxlen defaults to 76.

              Note that if maxlen is set to 0, the output will not be wrapped at all.

              Note  well:  If  your string is not simple ascii you should fix the string encoding
              before doing base64 encoding. See the examples.

              The command will throw an error for negative values of maxlen, or if maxlen is  not
              an integer number.

       ::base64::decode string
              Base64  decodes  the given string and returns the binary data.  The decoder ignores
              whitespace in the string.

EXAMPLES

              % base64::encode "Hello, world"
              SGVsbG8sIHdvcmxk

              % base64::encode [string repeat xyz 20]
              eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6
              eHl6eHl6eHl6
              % base64::encode -wrapchar "" [string repeat xyz 20]
              eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6eHl6

              # NOTE: base64 encodes BINARY strings.
              % set chemical [encoding convertto utf-8 "C\u2088H\u2081\u2080N\u2084O\u2082"]
              % set encoded [base64::encode $chemical]
              Q+KCiEjigoHigoBO4oKET+KCgg==
              % set caffeine [encoding convertfrom utf-8 [base64::decode $encoded]]

BUGS, IDEAS, FEEDBACK

       This document, and the package it describes,  will  undoubtedly  contain  bugs  and  other
       problems.    Please   report   such   in  the  category  base64  of  the  Tcllib  Trackers
       [http://core.tcl.tk/tcllib/reportlist].  Please also report any ideas for enhancements you
       may have for either package and/or documentation.

       When proposing code changes, please provide unified diffs, i.e the output of diff -u.

       Note further that attachments are strongly preferred over inlined patches. Attachments can
       be made by going to the Edit form of the ticket immediately after its creation,  and  then
       using the left-most button in the secondary navigation bar.

KEYWORDS

       base64, encoding

CATEGORY

       Text processing

COPYRIGHT

       Copyright (c) 2000, Eric Melski
       Copyright (c) 2001, Miguel Sofer