uuencode(n)          Text encoding & decoding binary data          uuencode(n)



______________________________________________________________________________

NAME
       uuencode - UU-encode/decode binary data

SYNOPSIS
       package require Tcl  8

       package require uuencode  ?1.1.4?

       ::uuencode::encode string

       ::uuencode::decode string

       ::uuencode::uuencode ?-name string? ?-mode octal? (-file filename |
       ?--? string)

       ::uuencode::uudecode (-file filename | ?--? string)

_________________________________________________________________

DESCRIPTION
       This package provides a Tcl-only implementation of the uuencode(1) and
       uudecode(1) commands. This encoding packs binary data into printable
       ASCII characters.

       ::uuencode::encode string
              returns the uuencoded data. This will encode all the data passed
              in even if this is longer than the uuencode maximum line length.
              If the number of input bytes is not a multiple of 3 then
              additional 0 bytes are added to pad the string.

       ::uuencode::decode string
              Decodes the given encoded data. This will return any padding
              characters as well and it is the callers responsibility to deal
              with handling the actual length of the encoded data. (see
              uuencode).

       ::uuencode::uuencode ?-name string? ?-mode octal? (-file filename |
       ?--? string)

       ::uuencode::uudecode (-file filename | ?--? string)
              UUDecode a file or block of data. A file may contain more than
              one embedded file so the result is a list where each element is
              a three element list of filename, mode value and data.

OPTIONS
       -filename name
              Cause the uuencode or uudecode commands to read their data from
              the named file rather that taking a string parameter.

       -name string
              The uuencoded data header line contains the suggested file name
              to be used when unpacking the data. Use this option to change
              this from the default of "data.dat".

       -mode octal
              The uuencoded data header line contains a suggested permissions
              bit pattern expressed as an octal string. To change the default
              of 0644 you can set this option. For instance, 0755 would be
              suitable for an executable. See chmod(1).

EXAMPLES
              % set d [uuencode::encode "Hello World!"]
              2&5L;&\\@5V]R;&0A


              % uuencode::uudecode $d
              Hello World!


              % set d [uuencode::uuencode -name hello.txt "Hello World"]
              begin 644 hello.txt
              +2&5L;&\@5V]R;&0`
              `
              end


              % uuencode::uudecode $d
              {hello.txt 644 {Hello World}}


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 SF Trackers
       [http://sourceforge.net/tracker/?group_id=12883].  Please also report
       any ideas for enhancements you may have for either package and/or
       documentation.

KEYWORDS
       encoding, uuencode

CATEGORY
       Text processing

COPYRIGHT
       Copyright (c) 2002, Pat Thoyts




base64                               1.1.4                         uuencode(n)
