作者liyih ()
看板Perl
标题Re: [问题] big5邮件的处理?
时间Sun Jul 5 17:31:35 2009
※ 引述《tumc (HIHIHI)》之铭言:
: 翻了之前版友的讨论及古狗也搜寻了一整天,都没有好的解答
: 想请问一下,如果邮件是以big5编码的,那要如何抓出Subject及Header呢
: 方法1:
: 之前有版友说可使用Mail::Simple
: 但我使用後会出现..
: ignoring text in character set 'BIG5'
: 仍就无法解出了...
: 方法2:
: 把出Subject内容後,再自己做一次加工
: if($subject =~ /=\?Big5\?B\?(.*)\?=/){
: $s=decode_base64($1);
: }
: 但这个regular express式子,要针对每封信去做小改变,无一通式
: 且关於body的部份,我就完全无法解出big5的中文内容出来
: 方法3: 等待版友提供好的模块,谢谢
可以使用 MIME-tools、MailTools 看看,既有的模组在处理信件各部份毕竟比较完善。
http://search.cpan.org/~doneill/MIME-tools-5.427/lib/MIME/Tools.pm
http://search.cpan.org/~markov/MailTools-2.04/
寄信可以使用 MIME::Lite,Base64 和 QP 的处理可以使用 MIME-Base64。
如果需要其他信件处理的资源可以参考「The Perl Email Project」
http://emailproject.perl.org/
实作部份则参考 RFC 文件会比较好,如 RFC 822、2822、2045~9。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.74.244.57
※ 编辑: liyih 来自: 211.74.244.57 (07/05 17:38)