我的应用程序轮询特定的电子邮件帐户并将电子邮件附件下载到磁盘。 我能够成功处理内联电子邮件附件并将附件概述为部分(部分javaof部件实例)。
但是,有一个特定的电子邮件,其中有一个com.sun.mail.util.BASE64DecoderStream
类型的附件。
因此,我无法获取文件名或其输入流。 虽然,我可以在原始邮件标题中看到fileName。
以下是标题的快照:
Date: Thu, 12 Sep 2013 13:05:29 -0400
From: SXXXXX <SXXXXX@XXXXXXn.com>
Subject: PO 926460
Message-ID: <ADR38000000849147@prd410.gleason.com>
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrIKsWRWlGSWpSXmKPExsVy7Ey1ju7lL4ZBBp/nqVlsbr3K5MDosXdD
H3MAYxSXTUpqTmZZapG+XQJXRs/Cz2wFM64zVexdsIO5gXHDOaYuRk4OCQETib975jFD2GIS
F+6tZ+ti5OIQEjjGKLF3+VR2COc0o8SRNwsYQapYBLQl7nRuYgOx2QR0JOb8a2UHsYUFpCTa
Lq8FmyoioCHRuvk/2FReASOJV1ueQdmCEidnPmEBsTkFhCQ6rnaywmyesO4XM8R8Z4m316+B
7RISsJS40zyVDaJGU2LGgRtgu5gFbCWOfpkGZStKTOl+CGWrSazqWMg+gVFoFpJ1s5C0zELS
Content-Type: application/pdf; name="PO 926460.pdf"
Content-Description: PO 926460
Content-Transfer-Encoding: base64
X-MS-Exchange-Organization-AuthSource: FANUCEXCHCHI03.FAC.local
X-MS-Exchange-Organization-AuthAs: Anonymous
X-TM-AS-Product-Ver: SMEX-10.0.0.1412-7.000.1014-20144.004
X-TM-AS-Result: No--7.671100-5.000000-31
X-TM-AS-User-Approved-Sender: No
X-TM-AS-User-Blocked-Sender: No
X-MS-Exchange-Organization-AVStamp-Mailbox: SMEXr^dE;1027300;0;This mail has
been scanned by Trend Micro ScanMail for Microsoft Exchange;
X-MS-Exchange-Organization-SCL: -1
MIME-Version: 1.0
请协助,如何获取文件名并获取输入流,从而将其作为文件保存到磁盘。
答案 0 :(得分:1)
该消息中没有附件。它是MIME类型“application / pdf”的单个部分(与multipart相对)消息。由于MimeMessage是一个部件,所以只需按照附件Part的方式对待它。