On Tuesday 18 July 2006 14:13, Dmitry E. Oboukhov wrote: > есть письмо в stdin > кормлю его MIME::Parser'у > далее хочу получить раскодированные заголовки (например From и To) > как просто получить заголовок закодированный в utf-8 или в кодировке > текущей локали (а не отправителя)?
Значения полей с не ASCII-символами в заголовке должны кодироваться строчками вида "=?KOI8-R?Q?=EF=CC=C5=C7_=E1=CE=C9=D3=C9=CD=CF=D7?= <[EMAIL PROTECTED]>". Раскодировать их умеет модуль MIME::WordDecoder. Я писал что-то типа такого: my $wd = MIME::WordDecoder->new([ 'US-ASCII' => sub { $_[0] }, 'KOI8-R' => sub { $_[0] }, 'WINDOWS-1251' => \&fromwin, 'CP1251' => \&fromwin, 'UTF8' => \&fromutf8, 'UTF-8' => \&fromutf8, '*' => sub { $_[0] }, ]); ... $from = $wd->decode($from); -- Best regards. Alexander Lourier. http://aml.rulezz.ru
pgpph9S72ezj5.pgp
Description: PGP signature