Una manera simple y sencilla de decodificar un subject cuando estamos trabajando con mensajes de correo es de la siguiente manera. Aunque, en este ejemplo se utiliza el package Email::Simple se puede utilizar Mail::Message u otro.
use strict;
use Email::Simple;
use Encode qw(decode);
use HTML::Entities;
my $msg = "";
{
local $/ = undef;
$msg = <STDIN>;
}
my $email = Email::Simple->new($msg);
my $subject = decode('MIME-Header', $email->header('subject'));
$subject = encode_entities($subject);
print $subject, "\n";
Muy simple y lo que es mejor, funcional. Me ha sacado de un gran problema. Pronto publicaré una forma sencilla de obtener el body del mensaje ya con su codificación interpretada.
Dejar un comentario