Extrair Anexos de Mensagens usando Aspose.Email e Apache POI HSMF
Contents
[ Hide ] Aspose.Email - Extrair Anexos de Mensagens
Para salvar anexos de mensagens existentes:
- Crie uma instância da classe MailMessage.
- Carregue a mensagem de e-mail existente usando o método load() da classe MailMessage, especificando o formato de mensagem correto.
- Crie uma instância da classe AttachmentCollection e preencha-a com anexos da instância MailMessage usando o método getAttachments().
- Percorra a coleção AttachmentCollection.
- Crie uma instância da classe Attachment e preencha-a com o valor indexado da AttachmentCollection usando o método get().
- Salve o anexo no disco usando o método save() da classe Attachment.
Java
MailMessage message = MailMessage.load(dataDir + "message.msg"); System.out.println("Extraindo anexos...."); for (int i = 0; i < message.getAttachments().size(); i++) { Attachment att = (Attachment) message.getAttachments().get_Item(i); System.out.println("Nome do Anexo: " + att.getName()); String attFileName = att.getName().replace(".eml", "").replace(":", " ").replace("\\", " ").replace("/", " ").replace("?", ""); // Salve o anexo no disco att.save(dataDir + attFileName); } Apache POI HSMF - Extrair Anexos de Mensagens
A classe AttachmentChunks pode ser usada para acessar anexos de MAPIMessage.
Java
MAPIMessage msg = new MAPIMessage(dataDir + "message.msg"); AttachmentChunks[] attachments = msg.getAttachmentFiles(); if (attachments.length > 0) { File d = new File(dataDir + "attachments"); if (d.exists() || d.mkdir()) { for (AttachmentChunks attachment : attachments) { String fileName = attachment.attachFileName.toString(); if (attachment.attachLongFileName != null) { fileName = attachment.attachLongFileName.toString(); } File f = new File(d, fileName); OutputStream fileOut = null; try { fileOut = new FileOutputStream(f); fileOut.write(attachment.attachData.getValue()); } finally { if (fileOut != null) { fileOut.close(); } } } } } Baixar Código em Execução
Baixar Código de Exemplo
Para mais detalhes, visite Gerenciar Anexos em Mensagens de Email.