Теперь, когда я загрузил все сообщения и сохранил их в
Message[] temp;
Как получить список вложений для каждого из этих сообщений в
List<File> attachments;
Примечание: никаких сторонних библиотек, только JavaMail.
java
attachment
javamail
фолоне
источник
источник
Вопрос очень старый, но может кому-то поможет. Я хотел бы расширить ответ Дэвида Рабиновица.
не должны возвращать все вложения, как вы ожидаете, потому что вы можете получать почту, в которой смешанная часть находится без определенного расположения.
поэтому в этом случае вы также можете проверить имя файла. Как это:
РЕДАКТИРОВАТЬ
существует весь рабочий код с использованием условия, описанного выше. Поскольку каждая часть может инкапсулировать другие части, а вложение должно быть вложенным, для обхода всех частей используется рекурсия.
источник
null
. Это правильно?Некоторая экономия времени для кода, в котором вы сохраняете файл вложения:
с javax mail версии 1.4 и более поздних вы можете сказать
вместо того
источник
bodyPart
сначала нужно преобразовать вMimeBodyPart
, например:((MimeBodyPart) bodyPart).saveFile("/tmp/" + bodyPart.getFileName());
Вы можете просто использовать Apache Commons Mail API MimeMessageParser - getAttachmentList () вместе с Commons IO и Commons Lang.
источник