Lire les pièces jointes d'email intégrées depuis le message dans Aspose.Email
Contents
[
Hide
]
Aspose.Email - Lire les pièces jointes d’e‑mail incorporées à partir du message
Parfois, nous recevons des e‑mails contenant d’autres e‑mails incorporés en tant que pièces jointes. Ces e‑mails incorporés sont des messages complets avec leur propre liste de destinataires, objet, corps et même pièces jointes. Chacun de ces messages peut également contenir des messages imbriqués. Avec Aspose.Email Java, les développeurs peuvent accéder à chaque message incorporé comme un message individuel. Cet exemple montre comment utiliser la fonctionnalité récursive.
Java
MailMessage message = MailMessage.load(dataDir + \"embedded.msg\", MessageFormat.getMsg());
for (int i = 0; i < message.getAttachments().size(); i++)
{
Attachment att = (Attachment) message.getAttachments().get_Item(i);
System.out.println("Attachment Name: " + att.getName());
// Get the name of attachment. If msg subject contains characters like :, /, \ etc., replace with space
// because windows cannot save files with these characters
// also save first 50 characters as file name to avoid long file names
String attFileName = att.getName().replace(".eml", "").replace(":", " ").replace("\\", " ").replace("/", " ").replace("?", "");
if (attFileName.length() > 50)
{
attFileName = attFileName.substring(0, 50);
}
String attExt = (att.getName().substring(att.getName().lastIndexOf("."), att.getName().lastIndexOf(".") + 4));
// Save the attachment to disk
att.save(dataPath + attFileName + attExt);
// Check if it is an orphaned text attachment file (ATT00001.txt....) and of type eml
if ((attExt.equals(".eml")) || (att.getContentType().getMediaType().equals("text/plain") && att.getName().contains(".txt") == true && att.getName().contains("ATT") == true))
{
// Try to load this text file in MailMessage
MailMessage attMsg = MailMessage.load(dataPath + attFileName + attExt, MessageFormat.getEml());
// Call the function recursively to parse this message and attachments
ParseMessage(attMsg);
}
}Télécharger le code en cours d’exécution
Télécharger le code d’exemple
Pour plus de détails, visitez Lire les pièces jointes d’e‑mail incorporées à partir du message.