Arrays 在Perl中读取Outlook.msg

Arrays 在Perl中读取Outlook.msg,arrays,perl,reference,outlook,Arrays,Perl,Reference,Outlook,我在用Perl读取Outlook电子邮件(Unicode).msg文件时遇到问题。每隔一天,我就会收到一封电子邮件,里面有我必须放入另一个文件中的信息。我想自动化这个过程 基本上,我的编程技能有限,刚刚开始学习专门用于此任务的Perl 这是我试图阅读邮件程序的一部分。到目前为止,电子邮件::Outlook::邮件是否已从“获取我”: 我可以打印编码的散列,但我不知道如何将正文的解码文本存储在数组中 我很高兴能得到每一点帮助 编辑:我想我会稍微更改我的初始问题,以避免发布几乎相同的问题。$mime

我在用Perl读取Outlook电子邮件(Unicode).msg文件时遇到问题。每隔一天,我就会收到一封电子邮件,里面有我必须放入另一个文件中的信息。我想自动化这个过程

基本上,我的编程技能有限,刚刚开始学习专门用于此任务的Perl

这是我试图阅读邮件程序的一部分。到目前为止,电子邮件::Outlook::邮件是否已从“获取我”:

我可以打印编码的散列,但我不知道如何将正文的解码文本存储在数组中

我很高兴能得到每一点帮助


编辑:我想我会稍微更改我的初始问题,以避免发布几乎相同的问题。

$mime->as_string
返回您要打印的值,但您不需要对其执行任何操作,而是打印未更改的
$mime
句柄。您需要
print$mime->as\u字符串


我认为代码还应该显示在无效上下文中as_字符串的无用用法
或类似用法,并显示
使用警告

谢谢,这让我更进一步。现在,似乎输出是经过编码的(…YXJlYXN0LWZvbn…)MIME部分。我怎样才能把它解码?真的是另一个问题。看起来像是
base64
,但您的代码片段太有限,无法真正说出。
use warnings;
use strict;
use Email::Outlook::Message;
use Email::MIME;

my $sourceDir = "c:/temp";

open_msg("test.msg");

sub open_msg {
   my $verbose = 0;
   my $msgFile = shift;
   my $origMsg = new Email::Outlook::Message "$sourceDir/$msgFile", $verbose or die "$!";
   my $mime = $origMsg->to_email_mime;
   $mime->as_string;
   return ($origMsg);
}