Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Affichage du contenu d'un mail avec JavaMail

3 réponses
Avatar
Scalpa
Bonjour

Je suis =E0 la recherche d'une m=E9thode pour afficher le contenu d'un
mail sous l'extension eml.
Avec l'API JavaMail, j'arrive bien =E0 r=E9cup=E9rer l'exp=E9diteur, le
destinataire, le sujet ... par contre le contenu ca parait beaucoup
moins =E9vident.
Quelqu'un pourrait-il m'aider ?

Merci d'avance

3 réponses

Avatar
Dam
public static void display(File emlFile) throws Exception{
Properties props = System.getProperties();
props.put("mail.host", "smtp.dummydomain.com");
props.put("mail.transport.protocol", "smtp");

Session mailSession = Session.getDefaultInstance(props, null);
InputStream source = new FileInputStream(emlFile);
MimeMessage message = new MimeMessage(mailSession, source);


System.out.println("Subject : " + message.getSubject());
System.out.println("From : " + message.getFrom()[0]);
System.out.println("--------------");
System.out.println("Body : " + message.getContent());
}
Avatar
Scalpa
Merci pour cette réponse, c'est ce que j'ai essayé en premier mais ca
ne marche pas pour tous les messages.
Lorsque j'utilise la fonction getContent(), ca me renvoie :
javax.mail.internet.MimeMultipart.
Peut-etre faut-il parser tous les elements du Multipart ...
Je vais essayer cette piste.

Y-a-t-il des personnes qui ont deja rencontrés ce problème ?

Merci d'avance.
Avatar
Jean-Christophe Sirot
Scalpa wrote:
Merci pour cette réponse, c'est ce que j'ai essayé en premier mais ca
ne marche pas pour tous les messages.
Lorsque j'utilise la fonction getContent(), ca me renvoie :
javax.mail.internet.MimeMultipart.
Peut-etre faut-il parser tous les elements du Multipart ...


Oui, ça arrive quand il y a une pièce jointe par exemple (image mais
aussi signature S/MIME oui PGP) ou quand un mailer "peu scrupuleux"
envoie dans le même mail le texte encodé en text/plain et en text/html.

Ces MimeMultipart peuvent bien sûr eux aussi contenir d'autre MimeMultipart.

--
Jean-Christophe