19.10. "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=None, mode=None)

   *Uuencode* le fichier *in_file* dans le fichier *out_file*. Le
   fichier *uuencodé* contiendra une entête spécifiant les valeurs de
   *name* et *mode* par défaut pour le décodage du fichier. Par défaut
   ces valeurs sont prises de *in_file* ou valent respectivement "'-'"
   et "0o666".

uu.decode(in_file, out_file=None, mode=None, quiet=False)

   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.
