[perl] Base64

Salman P. S. L. correo@salmansl.es
Wed, 24 Feb 1999 14:53:12 +0100


Ummm, me he equivocado, te he enviado la rutina de codificacion y tu quieres
la de decodificacion :-(

===========================
# This subroutine supports OutputMIMEPart by decoding Base64 data into
simple
# binary streams.
sub DecodeBase64 {
    my($strEncoded) = @_;
    my($strDecoded);

    # Remove non-base64 chars.
    $strEncoded =~ tr|A-Za-z0-9+=/||cd;
    if(length($strEncoded)%4)
    {
 return($strEncoded);
    }
    # Remove padding.
    $strEncoded =~ s/=+$//;

    # Convert encoded string to uuencoded data
    $strEncoded =~ tr|A-Za-z0-9+/| -_|;
    while($strEncoded =~ /(.{1,60})/gs)
    {
 # Compute length byte.
 my($iLength) = chr(32+length($1)*3/4);

 # UUdecode.
 $strDecoded .= unpack("u",$iLength . $1 );
    }

    return($strDecoded);
}
================================================
Saludos
Salvador

-----Mensaje original-----
De: Alejandra Carrillo <alejandrav@spin.com.mx>
Para: perl@tlali.iztacala.unam.mx <perl@tlali.iztacala.unam.mx>
Fecha: martes 23 de febrero de 1999 21:51
Asunto: [perl] Base64


   Hola, bueno ahora me toca dar lata a mi, resulta que estoy
   haciendo un lector de mail para "Web", he tenido algunos
   problemitas pero nada que no haya podido solucionar excepto
   que cuando "grabo" un archivo que viene como "Attachment"
   y viene codificado en BASE64 no lo convierte del todo bien,
   estoy utilizando la librería/odulo MIME::Base64,  ¿alguien
   ha tenido alguna experiencia en esto?

   Tanto los encabezados como el mensaje si vienen codificados
   en Base64 sí los decodifica bien.

   ¿Se tendra que grabar el archivo de alguna forma en especial
   si el attachment es un ejecutable o binario?


   Ciao,
   Alejandra.

   http://spin.com.mx/~alejandrav

--------- Pie de mensaje --------------------------------
Visite: http://tlali.iztacala.unam.mx/~randrade/perl.shtml
Cancelar inscripcion:
mail to: majordomo@tlali.iztacala.unam.mx
text   : cancelacion perl

--------- Pie de mensaje --------------------------------
Visite: http://tlali.iztacala.unam.mx/~randrade/perl.shtml
Cancelar inscripcion:
mail to: majordomo@tlali.iztacala.unam.mx
text   : cancelacion perl