Je reçois un fichier supplémentaire de type File
en téléchargeant des pièces jointes. J'utilise ici MimeBodyPart.saveFile()
est mon téléchargement du code de fixationJavamail Obtenir un fichier supplémentaire En téléchargeant des pièces jointes
for (MimeBodyPart mbp : msgToDownload.getAttachmentList()) {
updateProgress(msgToDownload.getAttachmentList().indexOf(mbp),
msgToDownload.getAttachmentList().size());
mbp.saveFile(DOWNLOAD_LOCATION + mbp.getFileName());
}
ici msgToDownload
est une classe qui prend Message msg
comme paramètre avec d'autres paramètres. Et getAttachmentList()
est une liste de type MimeBodyPart défini comme List<MimeBodyPart>
Voilà comment je suis d'ajouter des pièces jointes à la liste
sb.setLength(0);
msgToRender.clearAttachments();
Message msg = msgToRender.getMsgRef();
try {
// String messageType = msg.getContentType();
sb.append(getText(msg));
if (hasAttachments(msg)) {
Multipart mp = (Multipart) msg.getContent();
for (int i = mp.getCount() - 1; i >= 0; i--) {
BodyPart bp = mp.getBodyPart(i);
MimeBodyPart mbp = (MimeBodyPart) bp;
msgToRender.addAttachment(mbp);
}
}
}catch(Exception e){
}
fichier supplémentaire contient les attributs d'une partie de texte du courrier. Contenu du fichier supplémentaire
-001a114fd0aa0b377d0546bb84a0 Type de contenu: text/plain; charset = UTF-8 s'il vous plaît trouver les pièces jointes ... --001a114fd0aa0b377d0546bb84a0 Content-Type: text/html; charset = UTF-8 s'il vous plaît trouver les pièces jointes ... --001a114fd0aa0b377d0546bb84a0--
en téléchargeant des pièces jointes maintenant mon programme télécharge également un fichier contenant toutes les informations comme 'content-type' et un message texte dans ce fichier. Mais je ne veux pas qu'il télécharge cette information. –
Même si un message n'a pas de pièce jointe, téléchargez-en un avec les attributs de texte. –
Et dans le code ci-dessus je crois 'messageType.contains (" multipart ")' signifie tout type de multipart soit 'multipart/alternative' ou un autre type de multipart. N'est-ce pas vrai? –