use Mail::IMAPClient;
use IO::Socket::SSL;
2つのモジュールを入れて、受信できました。 問題があったのはメールのSubjectの部分で、エンコード、デコードしない場合、
=?ISO-2022-JP?B?Base64でエンコードされたSubject?=
になるので、まず、
Base64でエンコードされたSubjectの部分をDecodeして、そのあと ISO-2022-JPからutf8にDecodeすればよい。具体的には
use Encode;
use MIME::Base64;
$subject =~ s/=\?ISO-2022-JP\?B\?([A-Za-z0-9\+\/=]*)\?=/ decode_base64($1)/eg;
print decode("ISO-2022-JP", $subject), "\n";
No comments:
Post a Comment