|
ActiveTcl User Guide
|
|
|
[ Main table Of Contents | Tcllib Table Of Contents | Tcllib Index ]
yencode(n) 1.0.1 "encode/decoding a binary file"
yencode - encode/decoding a binary file
package require Tcl 8.2
package require yencode ?1.0.1?
This package provides a Tcl-only implementation of the yEnc file
encoding. This is a recently introduced method of encoding binary
files for transmission through usenet. This encoding packs binary
data into a format that requires an 8-bit clean transmission layer
but that escapes characters special to the NNTP posting protocols.
See http://www.yenc.org/ for
details concerning the algorithm.
- ::yencode::encode string
- returns the yEnc encoded data.
- ::yencode::decode string
- Decodes the given yEnc encoded data.
- ::yencode::yencode ?-name string? ?-line integer? ?-crc32
boolean? (-file filename |
?--? string)
- Encode a file or block of data.
- ::yencode::ydecode (-file filename | ?--? string)
- Decode 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, file size and data.
- -filename name
- Cause the yencode or ydecode commands to read their data from
the named file rather that taking a string parameter.
- -name string
- The encoded 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".
- -line integer
- The yencoded data header line contains records the line length
used during the encoding. Use this option to select a line length
other that the default of 128. Note that NNTP imposes a 1000
character line length limit and some gateways may have trouble with
more than 255 characters per line.
- -crc32 boolean
- The yEnc specification recommends the inclusion of a cyclic
redundancy check value in the footer. Use this option to change the
default from true to false.
|
% set d [yencode::yencode -file testfile.txt]
=ybegin line=128 size=584 name=testfile.txt
-o- data not shown -o-
=yend size=584 crc32=ded29f4f
|
encoding , uuencode , yEnc , ydecode , yencode
Copyright © 2002, Pat Thoyts