18.16. "uu" — Encode et décode les fichiers *uuencode*
******************************************************

**Code source :** Lib/uu.py

======================================================================

Ce module encode et décode les fichiers au format *uuencode*,
permettant à des données binaires d’être transférées lors de connexion
ASCII. Pour tous les arguments où un fichier est attendu, les
fonctions acceptent un « objet fichier-compatible ». Pour des raisons
de compatibilité avec les anciennes versions de Python, une chaîne de
caractères contenant un chemin est aussi acceptée, et le fichier
correspondant sera ouvert en lecture et écriture ; le chemin "'-'" est
considéré comme l’entrée ou la sortie standard. Cependant cette
interface est obsolète ; il vaut mieux que l’appelant ouvre le fichier
lui-même, en s’assurant si nécessaire que le mode d’ouverture soit
"'rb'" ou "'wb'" sur Windows.

Ce code provient d’une contribution de Lance Ellinghouse et a été
modifié par Jack Jansen.

Le module "uu" définit les fonctions suivantes :

uu.encode(in_file, out_file[, name[, mode]])

   Uuencode file *in_file* into file *out_file*.  The uuencoded file
   will have the header specifying *name* and *mode* as the defaults
   for the results of decoding the file. The default defaults are
   taken from *in_file*, or "'-'" and "0666" respectively.

uu.decode(in_file[, out_file[, mode[, quiet]]])

   Décode le fichier *in_file* et écrit le résultat dans *out_file*.
   Si *out_file* est un chemin, *mode* est utilisé pour les
   permissions du fichier lors de sa création. Les valeurs par défaut
   pour *out_file* et *mode* sont récupérées des entêtes *uuencode*.
   Cependant, si le fichier spécifié par les entêtes est déjà
   existant, une exception "uu.Error" est levée.

   La fonction "decode()" écrit un avertissement sur la sortie
   d’erreur si l’entrée contient des erreurs mais que Python a pu s’en
   sortir. Mettre *quiet* à *True* empêche l’écriture de cet
   avertissement.

exception uu.Error

   Classe fille d”"Exception", elle peut être levée par "uu.decode()"
   dans différentes situations, tel que décrit plus haut, mais aussi
   en cas d’entête mal formatée ou d’entrée tronquée.

Voir aussi:

  Module "binascii"
     Module secondaire contenant les conversions ASCII vers binaire et
     binaire vers ASCII.
