Créer un fichier .eml (email) en Java
Quelqu'un sait comment faire cela? J'ai obtenu toutes les informations de l'e-mail (le corps et l'objet, de , à, cc, cci) et la nécessité de générer un .eml fichier.
source d'informationauteur Jan Gressmann | 2008-10-01
Vous devez vous connecter pour publier un commentaire.
Vous pouvez construire
javax.mail.Message
objet (ou l'ont déjà construit à partir du serveur de messagerie) et puis vous pouvez utiliserwriteTo()
méthode pour enregistrer dans un fichier.Voir API JavaMail pour plus d'informations.
Vous pouvez créer des fichiers eml avec le code suivant. Il fonctionne très bien avec thunderbird et probablement avec d'autres clients de messagerie:
EML fichiers sont de simples fichiers texte. Les en-têtes sont séparés du corps par une ligne vide. Les en-têtes de ressembler à ceci:
Pour plus d'info, l'officiel de la spec est RFC 2822. C'est vraiment pas aussi difficile à lire que certains Rfc.
Edit: Quand je dit "texte brut", je ne l'aurais cru une seconde. J'ai vraiment le but de la plaine de l'ASCII et pas le 8-bit "ASCII étendu", seulement jusqu'à caractère 127. Si vous voulez plus de sept bits, vous avez besoin d'un codage, et les choses se compliquent.
À la recherche de ce type EML fichier il ressemble à un raw dump du texte de la communication qui est allé sur le serveur. C'est donc un fichier texte contenant les en-têtes de courriel et le corps. Pour obtenir vos pièces jointes, différents points de vue, etc dans le format approprié à l'intérieur du fichier EML vous avez besoin de MIME-encoder le corps et de ses parties.