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