当前,该电子邮件为有问题的MimeBodyPart显示以下标题:
------=_Part_56_339247379.1438186660985
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
这是标题部分应显示的内容:
----boundary_0_e825c994-ed10-443c-a2e7-d107b27d31dd
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: quoted-printable
这是我尝试强制使用quoted-printable的方法:
MimeBodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setHeader("Content-Transfer-Encoding", "quoted-printable");
如何强制Content-Transfer-Encoding引用可打印?我正在连接我的gmail的邮件服务器,如果有任何区别,请连接idk。也许该标头被Google覆盖。
最佳答案
我在电子邮件的主体方面对此问题有所不同。我的任务是复制另一个程序的输出,该程序即使在不需要时也总是使用带引号的printable。最终有效的方法是确保在将文本添加到消息后设置Content-Transfer-Encoding
标头。也许同一件事在mime-part上也可以使用。设置内容后尝试设置标题(可能会覆盖设置内容时的JavaMail决定的内容)。
FWIW,我正在使用JavaMail 1.5.5
关于java - Java Mail:强制将“Content-Transfer-Encoding”设置为“quoted-printable”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31706046/