Encoding 如何在mimemessage中设置base64编码中的Subject

Encoding 如何在mimemessage中设置base64编码中的Subject,encoding,jakarta-mail,Encoding,Jakarta Mail,当我使用javamail API发送邮件时,我将主题设置为 msg.setSubject(subject,charset) 但此setsubject方法仅在引用的可打印编码中对主题进行编码。 但我想用base64编码设置Subject 例如: 预期结果:=?big5?B= 获得的结果:=?big5?Q= 请帮帮我。 提前感谢您可以显式编码和设置主题标题: message.setHeader("Subject", MimeUtility.encodeText("Тема.", "utf-8", "

当我使用javamail API发送邮件时,我将主题设置为

msg.setSubject(subject,charset)

但此setsubject方法仅在引用的可打印编码中对主题进行编码。 但我想用base64编码设置Subject

例如:

预期结果:=?big5?B=

获得的结果:=?big5?Q=

请帮帮我。
提前感谢

您可以显式编码和设置主题标题:

message.setHeader("Subject", MimeUtility.encodeText("Тема.", "utf-8", "B"));
结果:

Subject: =?utf-8?B?0uXs4C4=?=
Subject: Subject.
但请注意,如果主题只有ASCII字符,则不会对其进行编码

message.setHeader("Subject", MimeUtility.encodeText("Subject.", "utf-8", "B"));
结果:

Subject: =?utf-8?B?0uXs4C4=?=
Subject: Subject.