我正在尝试使用JavaMail从Outlook邮件下载附件。
我可以下载邮件中的所有附件,但我想限制它。我想要做的只是下载CSV格式文件,如果它作为附件存在于邮件中。如果有任何其他格式的附件,请不要下载,只需忽略。
使用以下代码,我可以下载邮件中的所有附件,我尝试了一些东西,但似乎都没有正常工作。 你能帮助我如何使用JavaMail下载附加的CSV文件吗?
if (contentType.contains("multipart")) {
// content may contain attachments
Multipart multiPart = (Multipart) message.getContent();
int numberOfParts = multiPart.getCount();
for (int partCount = 0; partCount < numberOfParts; partCount++) {
MimeBodyPart part = (MimeBodyPart) multiPart.getBodyPart(partCount);
if (Part.ATTACHMENT.equalsIgnoreCase(part.getDisposition())) {
// this part is attachment
String fileName = part.getFileName();
attachFiles += fileName + ", ";
part.saveFile(saveDirectory + File.separator + fileName);
} else {
// this part may be the message content
messageContent = part.getContent().toString();
}
}
if (attachFiles.length() > 1) {
attachFiles = attachFiles.substring(0, attachFiles.length() - 2);
}
} else if (contentType.contains("text/plain") || contentType.contains("text/html")) {
Object content = message.getContent();
if (content != null) {
messageContent = content.toString();
}
}