0
我在下載附件時收到一個File
類型的額外文件。我使用MimeBodyPart.saveFile()
這裏是我的下載附件代碼Javamail獲取一個額外的文件在下載附件時
for (MimeBodyPart mbp : msgToDownload.getAttachmentList()) {
updateProgress(msgToDownload.getAttachmentList().indexOf(mbp),
msgToDownload.getAttachmentList().size());
mbp.saveFile(DOWNLOAD_LOCATION + mbp.getFileName());
}
這裏msgToDownload
是採取Message msg
與其它一些參數參數類。而getAttachmentList()
是MimeBodyPart的類型定義爲List<MimeBodyPart>
名單這是我如何添加附件列出
sb.setLength(0);
msgToRender.clearAttachments();
Message msg = msgToRender.getMsgRef();
try {
// String messageType = msg.getContentType();
sb.append(getText(msg));
if (hasAttachments(msg)) {
Multipart mp = (Multipart) msg.getContent();
for (int i = mp.getCount() - 1; i >= 0; i--) {
BodyPart bp = mp.getBodyPart(i);
MimeBodyPart mbp = (MimeBodyPart) bp;
msgToRender.addAttachment(mbp);
}
}
}catch(Exception e){
}
額外的文件包含郵件的文本部分的屬性。額外文件內容
-001a114fd0aa0b377d0546bb84a0 Content-Type:text/plain; charset = UTF-8請找到附件... --001a114fd0aa0b377d0546bb84a0 Content-Type:text/html;字符集= UTF-8,請找到附件... --001a114fd0aa0b377d0546bb84a0--
現在下載附件時,我的程序還下載了一個文件,該文件包含該文件中的所有信息,如「內容類型」和文本消息。但我不希望它下載該信息。 –
即使郵件沒有附件,也會下載一個帶有文本屬性的郵件。 –
而在上面的代碼中,我認爲'messageType.contains(「multipart」)'意味着所有類型的multipart或者'multipart/alternative'或者其他類型的multipart。這不正確。 –