[英]Body content is not being sent while I am trying to send an email with attachment with main body content in Java methods of MimeMessage
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(fromEmail));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(toEmail));
message.setFileName("abc.xls");
message.setText("Fill the content:");
上面是我正在使用的代碼的主要部分。 當我使用上面的代碼時,在發送的郵件中看不到主體內容“填充內容”。 還有其他帖子和評論,其中包含一段有效的代碼,可以使用MimeMultipart和MimeBodyPart類來解決。 但是沒有任何地方可以解釋上述代碼為何無法正常工作的原因。
我還知道,使用setFileName不足以添加文件中存在的內容,它僅用於添加不包含內容的附件。
注意:我正在使用javax.mail-1.5.0.jar
您能否解釋上述代碼無法正常工作的原因?
提前致謝。
包含文本消息和一個或多個附件的郵件必須是MultiPart
郵件,因為那樣構造郵件就可以使接收郵件的客戶端理解它。
在您的簡單示例中,您將不構建具有excel文件abc.xls
作為附件的郵件。 而是創建一個文本郵件,並告訴客戶端該郵件的主體應命名為abc.xls
。 接收郵件客戶端很可能會提供一個文本文件,其中包含內容Fill the content:
abc.xls
不恰當地命名為abc.xls
,否則將是空郵件的附件; 打開假定的Excel文件可能會導致Excel導入此文本文件。
TL; DR:使用MimeMultiPart
創建帶有附件的郵件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.