如何从MIME :: Entity部分中的content-disposition获取名称?

时间:2011-09-19 10:40:08

标签: perl mime

my $Parser = new MIME::Parser;
my $entity = $Parser->parse_data( $body );
my @parts = $entity->parts;
for $part(@parts){   
    my $type=$part->mime_type;
    my $bhandle=$part->bodyhandle;

    $header = $part->head();
    $content_disp = $header->get('Content-Disposition');

     if ($type =~ /text/i){
         $bodydata = "";
         if (my $io = $part->open("r")) {
             while (defined($_ = $io->getline)) {
                 $bodydata .= $_;
             }
            $io->close;
            print $bodydata;
         }
     }
}

1 个答案:

答案 0 :(得分:2)

我认为您正在寻找recommended_filename方法:

$header = $part->head();
$filename = $header->recommended_filename;

请务必检查返回值是否合理。请注意,它也可以是undef