我一直在試圖獲得解決方案,但我無法做到。這是整個事情。我寫了下面的代碼發送字符串作爲使用javamail的附件
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject(subject);
message.setSentDate(new Date());
MimeBodyPart messagePart = new MimeBodyPart();
messagePart.setContent(messageContent, "text/html");
Multipart multipart = new MimeMultipart("mixed");
multipart.addBodyPart(messagePart);
MimeBodyPart attachmentPart = new MimeBodyPart();
DataSource source = new ByteArrayDataSource(attachment.getBytes(), "text/plain");
attachmentPart.setDataHandler(new DataHandler(source));
attachmentPart.setFileName(attachmentFileName);
multipart.addBodyPart(attachmentPart);
message.setContent(multipart);
try {
Transport.send(message);
} catch (Exception e) {
e.printStackTrace();
}
該代碼幾乎不言自明。 messagePart是郵件和attachmentPart是附件。但是這裏的messagePart不是純文本。它是HTML。所以問題是如果我運行這個代碼郵件發送成功,但附件不附加到郵件。所以我的問題歸結爲這一點。是否可以發送html內容並同時將某些內容附加到郵件中。我被困在這裏。任何人都可以幫忙請。
Javamail版本是1.4.3。我在Google App Engine上運行此代碼。這可能是一切背後的問題嗎? – user1540439
添加了一個虛擬文本部分,它工作正常。謝謝你們的幫助 – user1540439
是的!添加虛擬文本部分也適用於我 - 也在Google App Engine上。 –