【发布时间】:2015-05-15 12:54:59
【问题描述】:
我需要有关 imap 文件夹编码的建议。
我是由我的邮件客户端(Thunderbird)创建的带有俄语符号的 imap 文件夹。
文件夹名称是 - Проверка
文件系统上的文件夹名称是 - user.mylogin.&BB8EQAQ+BDIENQRABDoEMA-
我为 convert (perl v5.10.1) 编写了这段代码
use strict;
use warnings;
use utf8;
use Encode::IMAPUTF7;
my $folder=$ARGV[1];
binmode(STDOUT,':utf8');
if ($ARGV[0] eq 'to')
{ print Encode::IMAPUTF7::encode('IMAP-UTF-7', $folder) }
elsif ($ARGV[0] eq 'from')
{ print Encode::IMAPUTF7::decode('IMAP-UTF-7', $folder) }
print "\n";
尝试将文件夹名称转换为俄语
[w@pandora6 tmp]$ ./imapfolder.pl from '&BB8EQAQ+BDIENQRABDoEMA-'
Проверка
一切正常
尝试反向转换
[w@pandora6 tmp]$ ./imapfolder.pl to Проверка
&ANAAnwDRAIAA0AC+ANAAsgDQALUA0QCAANAAugDQALA-
嗯.. 我期待 &BB8EQAQ+BDIENQRABDoEMA-
好的,编码回来
[w@pandora6 tmp]$ ./imapfolder.pl from '&ANAAnwDRAIAA0AC+ANAAsgDQALUA0QCAANAAugDQALA-'
ÐÑовеÑка
WTF?我期待Проверка
出了什么问题?
【问题讨论】: